私はあなたが簡単にかかわらず、(未テスト)自分自身を書くことができ
ここであなたを助けることができるMbUnitのCollectionAssert
クラスには何も表示されませんでした。
public class MyCollectionAssert
{
public void CollectionAssert(IEnumerable source, Predicate<object> assertion)
{
foreach(var item in source)
{
Assert.IsTrue(assertion(item));
}
}
public void AllAreInstancesOfType(IEnumerable source, Type type)
{
return CollectionAssert(source, o => o.GetType() == type);
}
}
私はあなたが実際にコンパイラがの型の安全性を強制IEnumerable<SomeClass>
をIEnumerableを意味していないと仮定します。この拡張メソッド呼び出しを使用するには:
MyCollectionAssert.AllAreInstancesOfType(myList, typeof(SomeClass));
「SomeClassまたは派生型」とはどういう意味ですか? SomeOtherClassがSomeClassから派生しない限り、IEnumerableはSomeOtherClassを持つことができないためです。 –