示例#1
0
        public void ToObservable2()
        {
            var lst  = new List <int>();
            var fail = false;
            var evt  = new ManualResetEvent(false);

            var xs = Return42.ToObservable();

            xs.Subscribe(new MyObserver <int>(
                             x =>
            {
                lst.Add(x);
            },
                             ex =>
            {
                fail = true;
                evt.Set();
            },
                             () =>
            {
                evt.Set();
            }
                             ));

            evt.WaitOne();
            Assert.False(fail);
            Assert.True(lst.SequenceEqual(new[] { 42 }));
        }
示例#2
0
        public async Task IgnoreElements2Async()
        {
            var xs = Return42.IgnoreElements();

            var e = xs.GetAsyncEnumerator();

            await NoNextAsync(e);
        }
示例#3
0
        public async Task Finally2Async()
        {
            var b = false;

            var xs = Return42.Finally(() => { b = true; });

            var e = xs.GetAsyncEnumerator();

            Assert.False(b);
            await HasNextAsync(e, 42);

            Assert.False(b);
            await NoNextAsync(e);

            Assert.True(b);
        }
示例#4
0
        public void ToEnumerable_Single()
        {
            var xs = Return42.ToEnumerable();

            Assert.True(xs.SequenceEqual(new[] { 42 }));
        }