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()); }