Skip to content

Commit ec78494

Browse files
committed
SeriesServiceImpl.add(): add unit tests for day and month of release.
Fix #14 (on GitHub)
1 parent 66b35d9 commit ec78494

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

src/test/groovy/ru/mystamps/web/service/SeriesServiceImplTest.groovy

+56
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,62 @@ class SeriesServiceImplTest extends Specification {
124124
})
125125
}
126126

127+
def "add() should pass day of month to dao when month and year are present"() {
128+
given:
129+
int expectedDay = 17
130+
form.setDay(expectedDay)
131+
form.setMonth(1)
132+
form.setYear(1996)
133+
when:
134+
service.add(form, user, false)
135+
then:
136+
1 * seriesDao.save({ Series series ->
137+
assert series?.releaseDay == expectedDay
138+
return true
139+
})
140+
}
141+
142+
def "add() shouldn't pass day of month to dao when month and year aren't present"() {
143+
given:
144+
form.setDay(17)
145+
form.setMonth(null)
146+
form.setYear(null)
147+
when:
148+
service.add(form, user, false)
149+
then:
150+
1 * seriesDao.save({ Series series ->
151+
assert series?.releaseDay == null
152+
return true
153+
})
154+
}
155+
156+
def "add() should pass month to dao when month and year are present"() {
157+
given:
158+
int expectedMonth = 6
159+
form.setMonth(expectedMonth)
160+
form.setYear(1997)
161+
when:
162+
service.add(form, user, false)
163+
then:
164+
1 * seriesDao.save({ Series series ->
165+
assert series?.releaseMonth == expectedMonth
166+
return true
167+
})
168+
}
169+
170+
def "add() shouldn't pass month to dao when year aren't present"() {
171+
given:
172+
form.setMonth(11)
173+
form.setYear(null)
174+
when:
175+
service.add(form, user, false)
176+
then:
177+
1 * seriesDao.save({ Series series ->
178+
assert series?.releaseMonth == null
179+
return true
180+
})
181+
}
182+
127183
def "add() should pass year to series dao if year present"() {
128184
given:
129185
int expectedYear = 2000

0 commit comments

Comments
 (0)