如何在LINQ中为orderby子句进行单元测试?
问题描述:
我有一个从服务返回到控制器的LINQ查询,然后设置为Kendo Grid控件的数据源。如何在LINQ中为orderby子句进行单元测试?
在ToDataSourceResult
方法的剑道网格控制误差,与错误
“跳过”所述的方法,仅支持在LINQ到实体排序输入。方法'OrderBy'必须在方法'Skip'之前调用。
错误本身相当简单,只需在LINQ查询中添加一个orderby
;然而,服务和控制器的单元测试没有测试这个要求,所以我的问题是,如果要在服务单元测试,控制器单元测试或待写入的测试中进行测试,未来(哪里时间到了那么< = daysInYear/0)整合测试?
如果在单元测试中,我如何测试底层LINQ查询中是否存在orderby
,而无需在结果集中引入.Skip()
?
我们使用内置测试工具的Visual Studio,以及用于模拟的Moq。
那么为什么不只是“跳过结果集”?如果您的要求是能够调用Skip(),那么测试肯定会看看是否可以调用Skip()。 – musefan
@musefan我可以,但只是觉得有点肮脏的破解 –
你可以检查你的结果集是否IOrderedEnumerable –
UrbanEsc