package com.vincent.rsf.server.common.service;
|
|
import com.vincent.rsf.common.utils.Serialize;
|
import org.junit.jupiter.api.BeforeEach;
|
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.extension.ExtendWith;
|
import org.mockito.Mock;
|
import org.mockito.junit.jupiter.MockitoExtension;
|
import redis.clients.jedis.Jedis;
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.when;
|
|
@ExtendWith(MockitoExtension.class)
|
class RedisServiceTest {
|
|
@Mock
|
private Jedis jedis;
|
|
private RedisService redisService;
|
|
@BeforeEach
|
void setUp() {
|
redisService = new RedisService() {
|
@Override
|
public Jedis getJedis() {
|
return jedis;
|
}
|
};
|
redisService.initialize = true;
|
}
|
|
@Test
|
void getClosesBorrowedJedisAfterReadingValue() {
|
when(jedis.get("MENU_TREE.FULL_TREE".getBytes())).thenReturn(Serialize.serialize("cached"));
|
|
String value = redisService.get("MENU_TREE", "FULL_TREE");
|
|
assertEquals("cached", value);
|
verify(jedis).close();
|
}
|
|
@Test
|
void deleteClosesBorrowedJedisAfterDeletingKey() {
|
when(jedis.del("MENU_TREE.FULL_TREE".getBytes())).thenReturn(1L);
|
|
Long deleted = redisService.delete("MENU_TREE", "FULL_TREE");
|
|
assertEquals(1L, deleted);
|
verify(jedis).close();
|
}
|
}
|