public void NotificationHostViewModel_AddsSpawnedNotificationToCollection_WhenNotNull() =>
        new TestScheduler().With(scheduler =>
        {
            var notificator = new Notificator();

            var sut = new NotificationHostViewModel(notificator);
            sut.Activator.Activate();

            notificator.PublishInfo("Hi");
            scheduler.AdvanceBy(2);

            Assert.Equal(1, sut.Notifications.Count);
        });
        public void NotificationHostViewModel_RemovesNotificationFromList_AfterCloseRequested() =>
        new TestScheduler().With(scheduler =>
        {
            var notificator = new Notificator();

            var sut = new NotificationHostViewModel(notificator);
            sut.Activator.Activate();

            notificator.PublishInfo("Hi");

            // Pass throttle
            scheduler.AdvanceBy(TimeSpan.FromMilliseconds(100).Ticks + 1);

            var notification = sut.Notifications.First();
            notification.Close.Execute(Unit.Default).Subscribe();

            scheduler.AdvanceBy(4);

            Assert.Equal(0, sut.Notifications.Count);
        });
Esempio n. 3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MainWindowViewModel" /> class.
 /// </summary>
 public MainWindowViewModel()
 {
     NotificationHost = new NotificationHostViewModel();
     Router           = new RoutingState();
     Router.Navigate.Execute(new ImageEditorViewModel());
 }