public static ContinuationOfGiven <ICollection <T> > AssertCollectionHasEnoughItems <T>(this GivenSelector <IEnumerable <T> > givenSelector, int length) { return(givenSelector .Given(items => items.ConvertOrCastToCollection()) .AssertCollectionHasEnoughItems(length)); }
public static void AssertCollectionsHaveSameItems <TActual, TExpected>(this GivenSelector <TActual[]> givenSelector, TExpected[] expected, Func <TActual[], TExpected[], int> findIndex) { givenSelector .Given(actual => new { Items = actual, Index = findIndex(actual, expected) }) .ForCondition(diff => diff.Index == -1) .FailWith("but {0} differs at index {1}.", diff => diff.Items, diff => diff.Index); }
public static ContinuationOfGiven <T[]> AssertCollectionHasNotTooManyItems <T>(this GivenSelector <T[]> givenSelector, int length) { return(givenSelector .Given(items => items.ToArray()) .ForCondition(items => items.Length <= length) .FailWith("but {0} contains {1} item(s) too many.", items => items, items => items.Length - length)); }
public static ContinuationOfGiven <ICollection <TActual> > AssertCollectionsHaveSameItems <TActual, TExpected>(this GivenSelector <ICollection <TActual> > givenSelector, ICollection <TExpected> expected, Func <ICollection <TActual>, ICollection <TExpected>, int> findIndex) { return(givenSelector .Given <ICollection <TActual> >(actual => new CollectionWithIndex <TActual>(actual, findIndex(actual, expected))) .ForCondition(diff => diff.As <CollectionWithIndex <TActual> >().Index == -1) .FailWith("but {0} differs at index {1}.", diff => diff.As <CollectionWithIndex <TActual> >().Items, diff => diff.As <CollectionWithIndex <TActual> >().Index)); }