2013-11-04 59 views
0

我想在这里执行的操作是检查我的lambda表达式查询是否返回我期望的Customers列表。单元测试 - 比较IEnumerable和通用

所以我:

  1. 得到了查询作为创建类型客户
  2. 预期列表使用(自IEnumerable)
  3. 类型的客户名单的实际结果Collection检查每个清单是否有相同的成员集合
  4. 但测试失败的原因如下:

enter image description here

我很困惑。据我可以看到,我只是比较相同的泛型类型的2个列表。我错过了什么?花了大约一个小时尝试各种演员等,所以任何帮助表示赞赏。

谢谢

P.S.我只是在玩弄lambdas,linq和单元测试,但是这真的让我感到困扰!

code

+0

很抱歉地说,但是如果您发布代码而不是代码图片,则会更容易。除非你想要一个答案的图像。 – Szymon

+0

可能dublicate http://stackoverflow.com/questions/5194966/mstest-collectionassert-areequivalent-failed-the-expected-collection-contains – JleruOHeP

+0

道歉。这是我的第一个问题。我查看了代码发布礼仪的“帮助”,但看不到任何图像与剪切和粘贴。 – user374770

回答

0

我会建议使用FluentAssert断言集合。你可以使用它几乎所有的东西,但收集它真的很好。

否则,你可以做这种断言。

Assert.AreEqual(2, actual.Count); 
Assert.AreEqual("jim", actual[0].FirstName); //and more 

或者您需要为您的对象有自定义相等比较器。