public void Safety_Subscription2()
        {
            var ex = new Exception();

            var scheduler = new TestScheduler();

            var xs = scheduler.CreateHotObservable <int>(
                OnNext(210, 42),
                OnNext(220, 43),
                OnNext(230, 44),
                OnNext(240, 45),
                OnCompleted <int>(250)
                );

            var ys = new RogueObservable(ex);

            var res = scheduler.Start(() =>
                                      xs.Merge(ys)
                                      );

            res.Messages.AssertEqual(
                OnError <int>(200, ex)
                );

            xs.Subscriptions.AssertEqual(
                Subscribe(200, 200)
                );
        }
        public void Safety_Subscription1()
        {
            var ex = new Exception();

            var xs  = new RogueObservable(ex);
            var res = xs.Where(x => true).Select(x => x);

            var err = default(Exception);
            var d   = res.Subscribe(x => { Assert.Fail(); }, ex_ => { err = ex_; }, () => { Assert.Fail(); });

            Assert.AreSame(ex, err);

            d.Dispose();
        }