Skip to content

Commit fa2b393

Browse files
committed
test(SeriesServiceImpl.findSimilarSeries): add unit tests.
Fix #992 No functional changes.
1 parent e32b74c commit fa2b393

File tree

3 files changed

+37
-1
lines changed

3 files changed

+37
-1
lines changed

src/main/java/ru/mystamps/web/feature/series/SeriesServiceImpl.java

-1
Original file line numberDiff line numberDiff line change
@@ -289,7 +289,6 @@ public List<SeriesLinkDto> findRecentlyAdded(int quantity, String lang) {
289289
return seriesDao.findLastAdded(quantity, lang);
290290
}
291291

292-
// @todo #967 SeriesServiceImpl.findSimilarSeries(): add unit tests
293292
@Override
294293
@Transactional(readOnly = true)
295294
public List<SeriesLinkDto> findSimilarSeries(Integer seriesId, String lang) {

src/test/groovy/ru/mystamps/web/feature/series/SeriesServiceImplTest.groovy

+26
Original file line numberDiff line numberDiff line change
@@ -1095,6 +1095,32 @@ class SeriesServiceImplTest extends Specification {
10951095
1 * seriesDao.findLastAdded(expectedQuantity, expectedLang) >> []
10961096
}
10971097

1098+
//
1099+
// Tests for findSimilarSeries()
1100+
//
1101+
1102+
def 'findSimilarSeries() should throw exception when series id is null'() {
1103+
when:
1104+
service.findSimilarSeries(null, Random.lang())
1105+
then:
1106+
IllegalArgumentException ex = thrown()
1107+
ex.message == 'Series id must be non null'
1108+
}
1109+
1110+
def 'findSimilarSeries() should invoke dao, pass arguments and return result from dao'() {
1111+
given:
1112+
Integer expectedSeriesId = Random.id()
1113+
String expectedLang = Random.lang()
1114+
and:
1115+
List<SeriesLinkDto> expectedResult = [ TestObjects.createSeriesLinkDto() ]
1116+
when:
1117+
List<SeriesLinkDto> result = service.findSimilarSeries(expectedSeriesId, expectedLang)
1118+
then:
1119+
1 * seriesDao.findSimilarSeries(expectedSeriesId, expectedLang) >> expectedResult
1120+
and:
1121+
result == expectedResult
1122+
}
1123+
10981124
//
10991125
// Tests for findAllForSitemap()
11001126
//

src/test/java/ru/mystamps/web/service/TestObjects.java

+11
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
import ru.mystamps.web.feature.series.PurchaseAndSaleDto;
4242
import ru.mystamps.web.feature.series.SeriesFullInfoDto;
4343
import ru.mystamps.web.feature.series.SeriesInfoDto;
44+
import ru.mystamps.web.feature.series.SeriesLinkDto;
4445
import ru.mystamps.web.feature.series.SitemapInfoDto;
4546
import ru.mystamps.web.feature.series.importing.ImportRequestDto;
4647
import ru.mystamps.web.feature.series.importing.ImportRequestFullInfo;
@@ -413,4 +414,14 @@ public static AddToCollectionForm createAddToCollectionForm() {
413414
return dto;
414415
}
415416

417+
public static SeriesLinkDto createSeriesLinkDto() {
418+
return new SeriesLinkDto(
419+
Random.id(),
420+
Random.issueYear(),
421+
Random.quantity(),
422+
Random.perforated(),
423+
Random.countryName()
424+
);
425+
}
426+
416427
}

0 commit comments

Comments
 (0)