1- package ru .topjava .webapp .storage ;
2-
3- import org .junit .Assert ;
4- import org .junit .Before ;
5- import org .junit .Test ;
6- import ru .topjava .webapp .exception .ExistStorageException ;
7- import ru .topjava .webapp .exception .NotExistStorageException ;
8- import ru .topjava .webapp .exception .StorageException ;
9- import ru .topjava .webapp .model .Resume ;
10-
11- public abstract class AbstractArrayStorageTest {
12- private final Storage storage ;
13- private final Resume resume1 ;
14- private final Resume resume2 ;
15- private final Resume resume3 ;
16- private final Resume resume4 ;
17-
18- public AbstractArrayStorageTest (Storage storage ) {
19- this .storage = storage ;
20- resume1 = new Resume ("uuid1" );
21- resume2 = new Resume ("uuid2" );
22- resume3 = new Resume ("uuid3" );
23- resume4 = new Resume ("uuid4" );
24- }
25-
26- @ Before
27- public void setUp () {
28- storage .clear ();
29- storage .save (resume1 );
30- storage .save (resume2 );
31- storage .save (resume3 );
32- }
33-
34- @ Test
35- public void save () {
36- storage .save (resume4 );
37- Assert .assertEquals (resume4 , storage .get ("uuid4" ));
38- Assert .assertEquals (4 , storage .size ());
39- }
40-
41- @ Test (expected = ExistStorageException .class )
42- public void saveExist () {
43- storage .save (resume2 );
44- }
45-
46- @ Test (expected = NotExistStorageException .class )
47- public void delete () {
48- try {
49- storage .delete (resume2 .getUuid ());
50- Assert .assertEquals (2 , storage .size ());
51- } catch (NotExistStorageException e ) {
52- Assert .fail ("NotExistStorageException thrown earlier, than expected" );
53- }
54- storage .get ("uuid2" );
55- }
56-
57- @ Test (expected = NotExistStorageException .class )
58- public void deleteNotExist () {
59- storage .delete (resume4 .getUuid ());
60- }
61-
62- @ Test
63- public void update () {
64- final Resume resume3Update = new Resume ("uuid3" );
65- storage .update (resume3Update );
66- Assert .assertEquals (resume3Update , storage .get ("uuid3" ));
67- }
68-
69- @ Test (expected = NotExistStorageException .class )
70- public void updateNotExist () {
71- storage .update (resume4 );
72- }
73-
74- @ Test
75- public void get () {
76- Assert .assertEquals (resume1 , storage .get ("uuid1" ));
77- }
78-
79- @ Test (expected = NotExistStorageException .class )
80- public void getNotExist () {
81- storage .get (resume4 .getUuid ());
82- }
83-
84- @ Test
85- public void getAll () {
86- Assert .assertArrayEquals (new Resume [] {resume1 , resume2 , resume3 }, storage .getAll ());
87- }
88-
89- @ Test
90- public void size () {
91- Assert .assertEquals (3 , storage .size ());
92- }
93-
94- @ Test
95- public void clear () {
96- storage .clear ();
97- }
98-
99- @ Test (expected = StorageException .class )
100- public void saveStorageFull () {
101- int initialSize = storage .size ();
102- try {
103- for (int i = 0 ; i < storage .length () - initialSize ; i ++) {
104- storage .save (new Resume ());
105- }
106- } catch (StorageException e ) {
107- Assert .fail ("StorageException thrown earlier, than expected" );
108- }
109- storage .save (new Resume ());
110- }
1+ package ru .topjava .webapp .storage ;
2+
3+ import org .junit .Assert ;
4+ import org .junit .Before ;
5+ import org .junit .Test ;
6+ import ru .topjava .webapp .exception .ExistStorageException ;
7+ import ru .topjava .webapp .exception .NotExistStorageException ;
8+ import ru .topjava .webapp .exception .StorageException ;
9+ import ru .topjava .webapp .model .Resume ;
10+
11+ import static ru .topjava .webapp .storage .AbstractArrayStorage .STORAGE_LENGTH ;
12+
13+ public abstract class AbstractArrayStorageTest extends AbstractStorageTest {
14+
15+ public AbstractArrayStorageTest (Storage storage ) {
16+ super (storage );
17+ }
18+
19+ @ Test (expected = StorageException .class )
20+ public void saveStorageFull () {
21+ int initialSize = storage .size ();
22+ try {
23+ for (int i = 0 ; i < STORAGE_LENGTH - initialSize ; i ++) {
24+ storage .save (new Resume ());
25+ }
26+ } catch (StorageException e ) {
27+ Assert .fail ("StorageException thrown earlier, than expected" );
28+ }
29+ storage .save (new Resume ());
30+ }
31+
11132}
0 commit comments