7
7
8
8
public class BirdWatcherTest {
9
9
10
+ private static final int DAY1 = 0 ;
11
+ private static final int DAY2 = 2 ;
12
+ private static final int DAY3 = 5 ;
13
+ private static final int DAY4 = 3 ;
14
+ private static final int DAY5 = 7 ;
15
+ private static final int DAY6 = 8 ;
16
+ private static final int TODAY = 4 ;
17
+
10
18
private BirdWatcher birdWatcher ;
11
- private int lastWeek [] = {0 , 2 , 5 , 3 , 7 , 8 , 4 };
19
+ private int lastWeek [] = {DAY1 , DAY2 , DAY3 , DAY4 , DAY5 , DAY6 , TODAY };
12
20
13
21
@ Before
14
22
public void setUp () {
@@ -17,13 +25,14 @@ public void setUp() {
17
25
18
26
@ Test
19
27
public void itTestGetLastWeek () {
20
- assertThat (birdWatcher .getLastWeek ().equals (lastWeek )).isTrue ();
28
+ assertThat (birdWatcher .getLastWeek ())
29
+ .containsExactly (DAY1 , DAY2 , DAY3 , DAY4 , DAY5 , DAY6 , TODAY );
21
30
}
22
31
23
32
@ Test
24
33
@ Ignore ("Remove to run test" )
25
34
public void itTestGetToday () {
26
- assertThat (birdWatcher .getToday ()).isEqualTo (lastWeek [ lastWeek . length - 1 ] );
35
+ assertThat (birdWatcher .getToday ()).isEqualTo (TODAY );
27
36
}
28
37
29
38
@ Test
@@ -39,7 +48,7 @@ public void itShouldReturnZeroIfBirdWatcherLastWeekIsEmpty() {
39
48
public void itIncrementTodaysCount () {
40
49
int currentTodayCount = birdWatcher .getToday ();
41
50
birdWatcher .incrementTodaysCount ();
42
- assertThat (birdWatcher .getToday ()).isEqualTo (currentTodayCount + 1 );
51
+ assertThat (birdWatcher .getToday ()).isEqualTo (TODAY + 1 );
43
52
}
44
53
45
54
@ Test
@@ -59,18 +68,20 @@ public void itShouldNotHaveDaysWithoutBirds() {
59
68
@ Test
60
69
@ Ignore ("Remove to run test" )
61
70
public void itTestGetCountForFirstDays () {
62
- assertThat (birdWatcher .getCountForFirstDays (4 )).isEqualTo (10 );
71
+ assertThat (birdWatcher .getCountForFirstDays (4 )).isEqualTo (DAY1 + DAY2 + DAY3 + DAY4 );
63
72
}
64
73
65
74
@ Test
66
75
@ Ignore ("Remove to run test" )
67
76
public void itTestGetCountForMoreDaysThanTheArraySize () {
68
- assertThat (birdWatcher .getCountForFirstDays (10 )).isEqualTo (29 );
77
+ assertThat (birdWatcher .getCountForFirstDays (10 ))
78
+ .isEqualTo (DAY1 + DAY2 + DAY3 + DAY4 + DAY5 + DAY6 + TODAY );
69
79
}
70
80
71
81
@ Test
72
82
@ Ignore ("Remove to run test" )
73
83
public void itTestGetCountForBusyDays () {
84
+ // DAY3, DAY5 and DAY6 are all >= 5 birds
74
85
assertThat (birdWatcher .getBusyDays ()).isEqualTo (3 );
75
86
}
76
87
0 commit comments