Collection Constraints (NUnit 2.4)
Collection constraints perform tests that are specific to collections. The following collection constraints are provided.
Syntax Helper | Constructor | Operation |
---|---|---|
Is.All... | AllItemsConstraint( Constraint ) | applies a constraint to each item in a collection |
Is.Unique | UniqueItemsConstraint() | tests that a collection contains only unique items |
List.Contains( object ) | CollectionContainsConstraint( object ) | tests that a collection contains an object |
Is.EquivalentTo( ICollection ) | CollectionEquivalentConstraint( ICollection ) | tests that two collections are equivalent |
Is.SubsetOf( ICollection ) | CollectionSubsetConstraint( ICollection ) | tests that one collection is a subset of another |
Notes
- Two collections are equivalent if they contain the same items, in any order.
- To compare collections for equality, use Is.EqualTo().
Examples of Use
int[] iarray = new int[] { 1, 2, 3 }; string[] sarray = new string[] { "a", "b", "c" }; Assert.That( iarray, Is.All.Not.Null ); Assert.That( sarray, Is.All.InstanceOfType(typeof(string)) ); Assert.That( iarray, Is.All.GreaterThan(0) ); Assert.That( sarray, Is.Unique ); Assert.That( iarray, List.Contains(3) ); Assert.That( sarray, List.Contains("b") ); Assert.That( sarray, List.Not.Contains("x") ); Assert.That( new string[] { "c", "a", "b" }, Is.EquivalentTo( sarray ) ); Assert.That( new int[] { 1, 2, 2 }, Is.Not.EquivalentTo( iarray ) ); Assert.That( new int[] { 1, 3 }, Is.SubsetOf( iarray ) ); // Using inheritance Expect( iarray, All.GreaterThan( 0 ) ); Expect( sarray, Contains("b") ); Expect( new int[] { 1, 3 }, SubsetOf( iarray ) );