public void MustOpenOnlyOneWindow() { var window = new Mock <IWindow>(); var sut = new AboutNotification(appConfig.Object, text.Object, uiFactory.Object); uiFactory.Setup(u => u.CreateAboutWindow(It.IsAny <AppConfig>())).Returns(window.Object); sut.Activate(); sut.Activate(); sut.Activate(); sut.Activate(); sut.Activate(); uiFactory.Verify(u => u.CreateAboutWindow(It.IsAny <AppConfig>()), Times.Once); window.Verify(u => u.Show(), Times.Once); window.Verify(u => u.BringToForeground(), Times.Exactly(4)); }
public void MustCloseWindowWhenTerminating() { var window = new Mock <IWindow>(); var sut = new AboutNotification(appConfig.Object, text.Object, uiFactory.Object); uiFactory.Setup(u => u.CreateAboutWindow(It.IsAny <AppConfig>())).Returns(window.Object); sut.Activate(); sut.Terminate(); window.Verify(w => w.Close()); }