From d59208f10b27d065953e82bd37873e05e6f09e4a Mon Sep 17 00:00:00 2001 From: Dmitry Protsko Date: Sun, 16 Apr 2017 21:11:10 +0300 Subject: [PATCH] UsersActivationService.findOlderThan(): add unit tests. Fix #337 --- .../UsersActivationServiceImplTest.groovy | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/test/groovy/ru/mystamps/web/service/UsersActivationServiceImplTest.groovy b/src/test/groovy/ru/mystamps/web/service/UsersActivationServiceImplTest.groovy index f1967a6f6d..5e6e39fb2d 100644 --- a/src/test/groovy/ru/mystamps/web/service/UsersActivationServiceImplTest.groovy +++ b/src/test/groovy/ru/mystamps/web/service/UsersActivationServiceImplTest.groovy @@ -23,6 +23,7 @@ import spock.lang.Unroll import ru.mystamps.web.dao.UsersActivationDao import ru.mystamps.web.dao.dto.AddUsersActivationDbDto import ru.mystamps.web.dao.dto.UsersActivationDto +import ru.mystamps.web.dao.dto.UsersActivationFullDto import ru.mystamps.web.model.RegisterAccountForm import ru.mystamps.web.service.dto.SendUsersActivationDto import ru.mystamps.web.tests.DateUtils @@ -245,6 +246,36 @@ class UsersActivationServiceImplTest extends Specification { result == expectedResult } + // + // Tests for findOlderThan() + // + + def "findOlderThan() should throw exception when days are less than zero"() { + when: + service.findOlderThan(-1) + then: + thrown IllegalArgumentException + } + + @SuppressWarnings(['ClosureAsLastMethodParameter', 'UnnecessaryReturnKeyword']) + def "findOlderThan() should invoke dao, pass changed date and return the result"() { + given: + int days = 4 + and: + Date expectedDate = new Date() - days + and: + List expectedResult = [ TestObjects.createUsersActivationFullDto() ] + when: + List result = service.findOlderThan(days) + then: + 1 * usersActivationDao.findOlderThan({ Date date -> + assert DateUtils.roughlyEqual(date, expectedDate) + return true + }) >> expectedResult + and: + result == expectedResult + } + // // Tests for remove() //