22
33import static org .easymock .EasyMock .expect ;
44import static org .easymock .EasyMock .replay ;
5+ import static org .easymock .EasyMock .verify ;
56import static org .junit .Assert .assertFalse ;
67import static org .junit .Assert .assertTrue ;
7- import static org .mockito . Mockito . verify ;
8+ import static org .junit . jupiter . api . Assertions . assertEquals ;
89
10+ import java .time .Duration ;
911import java .util .HashSet ;
1012import java .util .Set ;
1113
1214import org .easymock .EasyMockExtension ;
1315import org .easymock .Mock ;
1416import org .easymock .TestSubject ;
15- import org .junit .Test ;
17+ import org .junit .jupiter . api . Test ;
1618import org .junit .jupiter .api .extension .ExtendWith ;
19+ import org .springframework .data .redis .core .SetOperations ;
1720import org .springframework .data .redis .core .StringRedisTemplate ;
1821
1922@ ExtendWith (EasyMockExtension .class )
@@ -24,39 +27,43 @@ public class CRaterPingServiceImplTest {
2427 @ Mock
2528 private StringRedisTemplate stringRedisTemplate ;
2629
30+ @ Mock
31+ private SetOperations <String , String > setOperations ;
32+
2733 private String testId = "test" ;
2834
29- // @Test
30- // public void hasPingedItem_ItemPinged_ShouldReturnTrue() {
31- // Set<String> members = new HashSet<String>();
32- // members.add("pinged");
33- // expect(stringRedisTemplate.opsForSet().members(testId)).andReturn(members);
34- // replay(stringRedisTemplate);
35- // assertTrue(pingEndpointServiceImpl.hasPingedItem(testId));
36- // verify(stringRedisTemplate);
37- // }
35+ @ Test
36+ public void hasPingedItem_ItemPinged_ShouldReturnTrue () {
37+ Set <String > members = new HashSet <String >();
38+ members .add (testId );
39+ expect (stringRedisTemplate .opsForSet ()).andReturn (setOperations );
40+ expect (setOperations .members (testId )).andReturn (members );
41+ replay (stringRedisTemplate , setOperations );
42+ assertTrue (pingEndpointServiceImpl .hasPingedItem (testId ));
43+ verify (stringRedisTemplate );
44+ verify (setOperations );
45+ }
3846
39- // @Test
40- // public void hasPingedItem_ItemNotPinged_ShouldReturnFalse() {
41- // expect(stringRedisTemplate.opsForSet().members(testId)).andReturn(new HashSet<String>());
42- // assertFalse(pingEndpointServiceImpl.hasPingedItem(testId));
43- // }
44-
45-
46- // @Test
47- // public void cachePingedItem_ShouldCacheAndExpireItemId() {
48- // assertTrue(stringRedisTemplateOpsSize(testId) == 0);
49- // pingEndpointServiceImpl.cachePingedItem(testId, 1);
50- // assertTrue(stringRedisTemplateOpsSize(testId) == 1);
51- // try {
52- // Thread.sleep(1001);
53- // } catch(InterruptedException e) {
54- // e.printStackTrace();
55- // }
56- // assertTrue(stringRedisTemplateOpsSize(testId) == 0);
57- // }
58-
59- // private int stringRedisTemplateOpsSize(String id) {
60- // return stringRedisTemplate.opsForSet().members(id).size();
61- // }
62- }
47+ @ Test
48+ public void hasPingedItem_ItemNotPinged_ShouldReturnFalse () {
49+ Set <String > members = new HashSet <String >();
50+ expect (stringRedisTemplate .opsForSet ()).andReturn (setOperations );
51+ expect (setOperations .members (testId )).andReturn (members );
52+ replay (stringRedisTemplate , setOperations );
53+ assertFalse (pingEndpointServiceImpl .hasPingedItem (testId ));
54+ verify (stringRedisTemplate );
55+ verify (setOperations );
56+
57+ }
58+
59+
60+ @ Test
61+ public void cachePingedItem_ShouldCacheAndExpireItemId () {
62+ expect (stringRedisTemplate .opsForSet ()).andReturn (setOperations );
63+ expect (stringRedisTemplate .expire (testId , Duration .ofSeconds (1 ))).andReturn (null );
64+ expect (setOperations .add (testId , "pinged" )).andReturn (null );
65+ replay (stringRedisTemplate , setOperations );
66+ pingEndpointServiceImpl .cachePingedItem (testId , 1 );
67+ verify (stringRedisTemplate , setOperations );
68+ }
69+ }
0 commit comments