junit - 我正在尝试使用 easymock 返回列表
问题描述
List<ReservationArrival> resArrivalList = new ArrayList<>();
ReservationArrival reservArr = new ReservationArrival();
reservArr.setArrivalStatus("DISPATCHED");
reservArr.setReservationArrivalId(9888888L);
reservArr.setDispatchTime("2018-03-07 17:29:30");
EasyMock.replay( resArrivalList );
expect(namedParameterJdbcTemplate.query(EasyMock.anyObject(String.class),
EasyMock.anyObject(MapSqlParameterSource.class),
EasyMock.anyObject(ReservationArrivalMapper.class))).andReturn(resArrivalList);
我的名为ParameterJdbcTemplate 的模拟对象返回空列表
解决方案
您需要将模拟服务(namedParameterJdbcTemplate
)设置为重播模式,resArrivalList
而不是只是一个普通对象用作模拟的返回值。此外,重播调用必须在模拟设置之后。
像这样的东西应该工作:
List<ReservationArrival> resArrivalList = new ArrayList<>();
ReservationArrival reservArr = new ReservationArrival();
reservArr.setArrivalStatus("DISPATCHED");
reservArr.setReservationArrivalId(9888888L);
reservArr.setDispatchTime("2018-03-07 17:29:30");
expect(namedParameterJdbcTemplate.query(EasyMock.anyObject(String.class),
EasyMock.anyObject(MapSqlParameterSource.class),
EasyMock.anyObject(ReservationArrivalMapper.class))).andReturn(resArrivalList);
EasyMock.replay( namedParameterJdbcTemplate );
推荐阅读
- sql-server-2016 - SQL Server 中的第一个字符替换
- sql - 如何在 ssms 中声明日期时间类型的变量
- android - Android:保存jpeg图像而不压缩
- r - 使用 R 中的 for 循环填充二项分布的数据框
- java - 如何编写一个spring boot jpa规范加入多个表
- react-native - 如何在不阻塞 UI 的情况下处理繁重的 API 请求
- nvidia-jetson - NVidia DeepStream 输出推理类不匹配 - “车辆类”
- email - 请求被拒绝,因为请求的一个或多个范围未经授权或已过期
- java - 正则表达式屏蔽多个电话号码(~),除了最后 4 位数字
- reactjs - React 17.0.1 地图未定义