我正在尝试模拟redisService及其方法。我不确定为什么这不起作用。基本上我在服务代码中得到一个空指针,因为存根的smembers()方法返回null而不是下面的模拟Set。有任何想法吗? THX。
void "test findAnagramsForWord happy path"() {
given: "a test word and a mocked service"
String word = "read"
Set mockSet = new HashSet()
mockSet.add("read")
RedisService mockRedisService = Mock()
mockRedisService.smembers(_) >> mockSet
service.redisService = mockRedisService
when: "anagramService.findAnagramsForWord is called"
def anagramMap = service.findAnagramsForWord(word)
then: "Expect to equal a certain product of prime numbers"
anagramMap.anagrams.length() == 2
}