public void AdvanceByRaisesEvent()
 {
     var scheduler = new MyHistoricalScheduler ();
     Assert.AreEqual (DateTimeOffset.MinValue.AddDays (1), scheduler.PublicAdd (TimeSpan.FromDays (1)), "#0");
     Assert.AreEqual (TimeSpan.FromDays (1), scheduler.PublicToRelative (TimeSpan.FromDays (1)), "#0-2");
     var source = Observable.Interval (TimeSpan.FromDays (1), scheduler);
     int x = 0;
     var dis = source.Subscribe (v => x++);
     Assert.IsNotNull (scheduler.PublicGetNext (), "#1");
     Assert.AreEqual (0, x, "#2");
     scheduler.AdvanceBy (TimeSpan.FromHours (1));
     Assert.AreEqual (0, x, "#3");
     scheduler.AdvanceBy (TimeSpan.FromDays (1));
     var item = scheduler.PublicGetNext ();
     Assert.IsNotNull (item, "#5");
     Assert.AreEqual (1, x, "#5");
     dis.Dispose ();
 }
Beispiel #2
0
        public void AdvanceByRaisesEvent()
        {
            var scheduler = new MyHistoricalScheduler();

            Assert.AreEqual(DateTimeOffset.MinValue.AddDays(1), scheduler.PublicAdd(TimeSpan.FromDays(1)), "#0");
            Assert.AreEqual(TimeSpan.FromDays(1), scheduler.PublicToRelative(TimeSpan.FromDays(1)), "#0-2");
            var source = Observable.Interval(TimeSpan.FromDays(1), scheduler);
            int x      = 0;
            var dis    = source.Subscribe(v => x++);

            Assert.IsNotNull(scheduler.PublicGetNext(), "#1");
            Assert.AreEqual(0, x, "#2");
            scheduler.AdvanceBy(TimeSpan.FromHours(1));
            Assert.AreEqual(0, x, "#3");
            scheduler.AdvanceBy(TimeSpan.FromDays(1));
            var item = scheduler.PublicGetNext();

            Assert.IsNotNull(item, "#5");
            Assert.AreEqual(1, x, "#5");
            dis.Dispose();
        }