2010-02-03 36 views
2

這是對previous question I asked今天的擴展....它突出了使用CollectionAssert來幫助測試集合(我從來不知道)。如何使用CollectionAssert(和Linq?)查找一個屬性的所有值,是否一樣?

我有一個ICollection<Foo> foos;這有一個屬性稱爲狀態,其中..保持簡單,是一個int或字節(無論漂浮在你的船< - 看看我在那裏做了什麼?!/我隱藏)。

那麼,如何使用CollectionAssert來查看返回的ICollection中的所有項目是否都具有相同的值?

回答

2

我沒有看到CollectionAssert任何幫助,但你可以這樣做:

int expectedValue = foos.First().Status; 
Assert.IsTrue(foos.All(x => x.Status == expectedValue)); 

這不是理想的,因爲它不會顯示在故障情況下的實際值 - 但你可以爲此編寫自己的方法,如果您需要定期執行此操作。

+0

感謝喬恩(再次:P)。這很棒。我經常忘記〜全部(..)〜擴展方法。這將工作像一個治療:) – 2010-02-03 10:39:47

相關問題