public static void Append1() { IEnumerable <int> source = new ThrowingEnumerable <int>(); var q = Assert.DoesNotThrow(() => source.Append(1)); Assert.ThrowsOnNext(q); }
public static void CollectAny1a() { IEnumerable <Either <int, int> > source = new ThrowingEnumerable <Either <int, int> >(); var q = Assert.DoesNotThrow(() => source.CollectAny()); Assert.ThrowsOnNext(q); }
public static void CollectImpl1a() { IEnumerable <Either <int, int> > source = new ThrowingEnumerable <Either <int, int> >(); var q = Assert.DoesNotThrow(() => source.CollectImpl()); q.OnLeft(x => Assert.ThrowsOnNext(x)); q.OnRight(x => Assert.Fail()); }
public static void Zip1a() { IEnumerable <int> first = new ThrowingEnumerable <int>(); var second = Enumerable.Range(0, 1); Func <int, int, Either <int, int> > resultSelector = (i, j) => Either <int, int> .OfLeft(i + j); var q = Assert.DoesNotThrow(() => Either.Zip(first, second, resultSelector)); q.OnLeft(x => Assert.ThrowsOnNext(x)); q.OnRight(x => Assert.Fail()); }
public static void Generate01() { Func <int, int> generator = _ => throw new InvalidOperationException(); Func <int, bool> predicate = _ => throw new InvalidOperationException(); var q1 = Assert.DoesNotThrow(() => Sequence.Generate(0, generator)); Assert.ThrowsAfter(q1, 1); var q2 = Assert.DoesNotThrow(() => Sequence.Generate(0, generator, _ => true)); Assert.ThrowsAfter(q2, 1); var q3 = Assert.DoesNotThrow(() => Sequence.Generate(0, i => i + 1, predicate)); Assert.ThrowsOnNext(q3); }
public static void Unfold1b() { Func <int, int> generator = _ => throw new InvalidOperationException(); Func <int, int> resultSelector = _ => throw new InvalidOperationException(); Func <int, bool> predicate = _ => throw new InvalidOperationException(); var q1 = Assert.DoesNotThrow(() => Sequence.Unfold(0, generator, i => i + 1)); Assert.ThrowsAfter(q1, 1); var q2 = Assert.DoesNotThrow(() => Sequence.Unfold(0, i => i + 1, resultSelector)); Assert.ThrowsOnNext(q2); var q3 = Assert.DoesNotThrow(() => Sequence.Unfold(0, generator, i => i + 1, _ => true)); Assert.ThrowsAfter(q3, 1); var q4 = Assert.DoesNotThrow(() => Sequence.Unfold(0, i => i + 1, resultSelector, _ => true)); Assert.ThrowsOnNext(q4); var q5 = Assert.DoesNotThrow(() => Sequence.Unfold(0, i => i + 1, i => i + 1, predicate)); Assert.ThrowsOnNext(q5); }