public void ElementAtOrDefault_With_OutOfRange_Must_ReturnDefault(int[] source, int index) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); // Act var result = ValueReadOnlyCollection .ElementAtOrDefault <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped, index); // Assert _ = result.Must() .BeEqualTo(default);
public void Contains_ValueType_With_Null_And_NotContains_Must_ReturnFalse(int[] source) { // Arrange const int value = int.MaxValue; var wrapped = Wrap.AsValueReadOnlyCollection(source); // Act var result = wrapped.AsValueEnumerable() .Contains(value); // Assert _ = result.Must() .BeFalse(); }
public void Skip_With_ValidData_Must_Succeed(int[] source, int count) { // Arrange var wrapped = Wrap.AsValueReadOnlyCollection(source); var expected = System.Linq.Enumerable.Skip(wrapped, count); // Act var result = ValueReadOnlyCollectionExtensions.Skip <Wrap.ValueReadOnlyCollectionWrapper <int>, Wrap.Enumerator <int>, int>(wrapped, count); // Assert _ = result.Must() .BeEnumerableOf <int>() .BeEqualTo(expected); }
public void ElementAt_With_OutOfRange_Must_Throw(int[] source, int index) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); // Act Action action = () => _ = ValueReadOnlyCollection .ElementAt <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped, index); // Assert _ = action.Must() .Throw <ArgumentOutOfRangeException>(); }
public void Select_With_NullSelector_Must_Throw() { // Arrange var collection = Wrap.AsValueReadOnlyCollection(new int[0]); var selector = (NullableSelector <int, string>)null; // Act Action action = () => _ = ValueReadOnlyCollectionExtensions.Select <Wrap.ValueReadOnlyCollectionWrapper <int>, Wrap.Enumerator <int>, int, string>(collection, selector); // Assert _ = action.Must() .Throw <ArgumentNullException>() .EvaluateTrue(exception => exception.ParamName == "selector"); }
public void Contains_With_Comparer_And_NotContains_Must_ReturnFalse(int[] source) { // Arrange var value = int.MaxValue; var wrapped = Wrap.AsValueReadOnlyCollection(source); // Act var result = ValueReadOnlyCollection .Contains <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped, value, EqualityComparer <int> .Default); // Assert _ = result.Must() .BeFalse(); }
public void Contains_With_DefaultComparer_And_NotContains_Must_ReturnFalse(int[] source) { // Arrange const int value = int.MaxValue; var wrapped = Wrap.AsValueReadOnlyCollection(source); // Act var result = wrapped.AsValueEnumerable() .Contains(value, EqualityComparer <int> .Default); // Assert _ = result.Must() .BeFalse(); }
public void Contains_ValueType_With_Null_And_Contains_Must_ReturnTrue(int[] source) { // Arrange var value = System.Linq.Enumerable.Last(source); var wrapped = Wrap.AsValueReadOnlyCollection(source); // Act var result = ValueReadOnlyCollectionExtensions .Contains <Wrap.ValueReadOnlyCollectionWrapper <int>, Wrap.Enumerator <int>, int>(wrapped, value); // Assert _ = result.Must() .BeTrue(); }
public void Contains_ReferenceType_With_Null_And_Contains_Must_ReturnTrue(int[] source) { // Arrange var value = System.Linq.Enumerable.Last(source).ToString(); var wrapped = Wrap.AsValueReadOnlyCollection(source.Select(item => item.ToString()).ToArray()); // Act var result = ValueReadOnlyCollectionExtensions .Contains <Wrap.ValueReadOnlyCollectionWrapper <string>, Wrap.Enumerator <string>, string>(wrapped, value); // Assert _ = result.Must() .BeTrue(); }
public void Contains_ValueType_With_Null_And_NotContains_Must_ReturnFalse(int[] source) { // Arrange var value = int.MaxValue; var wrapped = Wrap.AsValueReadOnlyCollection(source); // Act var result = ValueReadOnlyCollectionExtensions .Contains <Wrap.ValueReadOnlyCollectionWrapper <int>, Wrap.Enumerator <int>, int>(wrapped, value); // Assert _ = result.Must() .BeFalse(); }
public void Contains_ReferenceType_With_Null_And_NotContains_Must_ReturnFalse(int[] source) { // Arrange const string?value = default; var wrapped = Wrap.AsValueReadOnlyCollection(source.Select <int, string?>(item => item.ToString()).ToArray()); // Act var result = wrapped.AsValueEnumerable() .Contains(value); // Assert _ = result.Must() .BeFalse(); }
public void Contains_With_Comparer_And_Contains_Must_ReturnTrue(int[] source) { // Arrange var value = System.Linq.Enumerable.Last(source); var wrapped = Wrap.AsValueReadOnlyCollection(source); // Act var result = ValueReadOnlyCollection .Contains <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped, value, EqualityComparer <int> .Default); // Assert _ = result.Must() .BeTrue(); }
public void First_With_Empty_Must_Return_None(int[] source) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); // Act var result = wrapped.AsValueEnumerable() .First(); // Assert _ = result.Must() .BeOfType <Option <int> >() .EvaluateTrue(option => option.IsNone); }
public void AsValueReadOnlyCollection1_With_ValidData_Must_Succeed(int[] source) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); // Act var result = wrapped .AsValueEnumerable(); // Assert _ = result.Must() .BeEnumerableOf <int>() .BeEqualTo(source); }
public void Any_PredicateAt_With_ValidData_Must_Succeed(int[] source, Func <int, int, bool> predicate) { // Arrange var wrapped = Wrap.AsValueReadOnlyCollection(source); var expected = source.Where(predicate).Count() != 0; // Act var result = wrapped.AsValueEnumerable() .Any(predicate); // Assert _ = result.Must() .BeEqualTo(expected); }
public void First_With_Empty_Must_Throw(int[] source) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); // Act Action action = () => _ = ValueReadOnlyCollection .First <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped); // Assert _ = action.Must() .Throw <InvalidOperationException>() .EvaluateTrue(exception => exception.Message == "Sequence contains no elements"); }
public void Single_With_Multiple_Must_Return_None(int[] source) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); // Act var result = ValueReadOnlyCollection .Single <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped); // Assert _ = result.Must() .BeOfType <Option <int> >() .EvaluateTrue(option => option.IsNone); }
public void Contains_ValueType_With_Null_And_Contains_Must_ReturnTrue(int[] source) { // Arrange var value = source .Last(); var wrapped = Wrap.AsValueReadOnlyCollection(source); // Act var result = wrapped.AsValueEnumerable() .Contains(value); // Assert _ = result.Must() .BeTrue(); }
public void Contains_Selector_With_Null_And_NotContains_Must_ReturnFalse(int[] source, Selector <int, string> selector) { // Arrange var value = "!"; var wrapped = Wrap.AsValueReadOnlyCollection(source); // Act var result = ValueReadOnlyCollection .Select <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int, string>(wrapped, selector) .Contains(value, null); // Assert _ = result.Must() .BeFalse(); }
public void Any_With_ValidData_Must_Succeed(int[] source) { // Arrange var wrapped = Wrap.AsValueReadOnlyCollection(source); var expected = System.Linq.Enumerable.Any(source); // Act var result = ValueReadOnlyCollection .Any <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped); // Assert _ = result.Must() .BeEqualTo(expected); }
public void Contains_With_Comparer_And_Contains_Must_ReturnTrue(int[] source) { // Arrange var value = source .Last(); var wrapped = Wrap.AsValueReadOnlyCollection(source); // Act var result = wrapped.AsValueEnumerable() .Contains(value, TestComparer <int> .Instance); // Assert _ = result.Must() .BeTrue(); }
public void SingleOrDefault_With_Multiple_Must_Throw(int[] source) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); // Act Action action = () => _ = ValueReadOnlyCollection .SingleOrDefault <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped); // Assert _ = action.Must() .Throw <InvalidOperationException>() .EvaluateTrue(exception => exception.Message == "Sequence contains more than one element"); }
public void Sum_With_NullableDecimal_Must_Succeed(decimal?[] source) { // Arrange var wrapped = Wrap.AsValueReadOnlyCollection(source); var expected = source .Sum(); // Act var result = wrapped.AsValueEnumerable() .Sum(); // Assert _ = result.Must() .BeEqualTo(expected !.Value); }
public void All_With_ValidData_Must_Succeed(int[] source, Predicate <int> predicate) { // Arrange var wrapped = Wrap.AsValueReadOnlyCollection(source); var expected = System.Linq.Enumerable.All(wrapped, predicate.AsFunc()); // Act var result = ValueReadOnlyCollectionExtensions .All <Wrap.ValueReadOnlyCollectionWrapper <int>, Wrap.Enumerator <int>, int>(wrapped, predicate); // Assert _ = result.Must() .BeEqualTo(expected); }
public void All_With_NullPredicate_Must_Throw() { // Arrange var wrapped = Wrap.AsValueReadOnlyCollection(new int[0]); var predicate = (Predicate <int>)null; // Act Action action = () => _ = ValueReadOnlyCollectionExtensions .All <Wrap.ValueReadOnlyCollectionWrapper <int>, Wrap.Enumerator <int>, int>(wrapped, predicate); // Assert _ = action.Must() .Throw <ArgumentNullException>() .EvaluateTrue(exception => exception.ParamName == "predicate"); }
public void First_With_Empty_Must_Return_None(int[] source) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); // Act var result = ValueReadOnlyCollectionExtensions .First <Wrap.ValueReadOnlyCollectionWrapper <int>, Wrap.Enumerator <int>, int>(wrapped); // Assert _ = result.Must() .BeOfType <Option <int> >() .EvaluateTrue(option => option.IsNone); }
public void SingleOrDefault_With_EmptyOrSingle_Must_Succeed(int[] source) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); var expected = System.Linq.Enumerable.SingleOrDefault(source); // Act var result = ValueReadOnlyCollection .SingleOrDefault <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped); // Assert _ = result.Must() .BeEqualTo(expected); }
public void First_SelectorAt_With_Empty_Must_Return_None(int[] source, NullableSelectorAt <int, string> selector) { // Arrange var wrapped = Wrap .AsValueReadOnlyCollection(source); // Act var result = ValueReadOnlyCollectionExtensions .Select <Wrap.ValueReadOnlyCollectionWrapper <int>, Wrap.Enumerator <int>, int, string>(wrapped, selector) .First(); // Assert _ = result.Must() .BeOfType <Option <string> >() .EvaluateTrue(option => option.IsNone); }
public void All_PredicateAt_With_ValidData_Must_Succeed(int[] source, PredicateAt <int> predicate) { // Arrange var wrapped = Wrap.AsValueReadOnlyCollection(source); var expected = System.Linq.Enumerable.Count( System.Linq.Enumerable.Where(source, predicate.AsFunc())) == source.Length; // Act var result = ValueReadOnlyCollection .All <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped, predicate); // Assert _ = result.Must() .BeEqualTo(expected); }
public void Any_PredicateAt_With_Null_Must_Throw() { // Arrange var source = new int[0]; var wrapped = Wrap.AsValueReadOnlyCollection(source); var predicate = (PredicateAt <int>)null; // Act Action action = () => _ = ValueReadOnlyCollection .Any <Wrap.ValueReadOnlyCollection <int>, Wrap.Enumerator <int>, int>(wrapped, predicate); // Assert _ = action.Must() .Throw <ArgumentNullException>() .EvaluateTrue(exception => exception.ParamName == "predicate"); }