在利用mockito模拟redistemplate执行lua脚本的时候,使用mockito的参数匹配器一直无法成功,不知道是否有前辈遇到这样的问题,控制台出现的错误如下:
测试代码如下:
希望redistemplate执行脚本后,返回定义的mockResult列表
@SpringBootTest
@RunWith(MockitoJUnitRunner.class)
public class OrderServiceImplTest {
@Autowired
public OrderServiceImpl orderService;
@MockBean
public PatientFeignClient patientFeignClient;
@MockBean
@Qualifier("redisTemplate")
private RedisTemplate redisTemplate;
@MockBean
private HospitalFeignClient hospitalFeignClient;
@MockBean
private RabbitService rabbitService;
/*
测试排班id不存在
*/
@Test
public void saveOrder() {
List<Object> mockResult = Arrays.asList(1);
when(redisTemplate.execute(Mockito.any(DefaultRedisScript.class),Mockito.anyList(),Mockito.eq(100))).thenReturn(mockResult);
}
}