2013-11-04 58 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 

或者您需要爲您的對象有自定義相等比較器。