public void DisposeStopsServer() { // Arrange var server = new Mock<IWebServer>(); var impl = new WelcomePageImpl(Mock.Of<ISolutionFolder>(), Mock.Of<IDefaultDocumentPolicy>(),Mock.Of<IItemOperations>(), server.Object); impl.OnAfterOpenSolution(); // Act impl.Dispose(); // Assert server.Verify(x => x.Stop(), Times.Once()); }
public void CloseSolution() { // Arrange var itemOperations = new Mock<IItemOperations>(); var solutionFolder = new Mock<ISolutionFolder>(); var policy = new Mock<IDefaultDocumentPolicy>(); const string rootFolder = @"Z:\some\path"; solutionFolder.Setup(x => x.GetDirectoryName()) .Returns(rootFolder); policy.Setup(x => x.ContainsDefaultDocument(It.IsAny<string>())) .Returns(false); var server = new Mock<IWebServer>(); var impl = new WelcomePageImpl(solutionFolder.Object, policy.Object, itemOperations.Object, server.Object); impl.OnAfterOpenSolution(); // Act impl.OnAfterCloseSolution(); // Assert server.Verify(x => x.Stop(), Times.Once()); }
public void OpenWelcomePageWithReadMe() { // Arrange var itemOperations = new Mock<IItemOperations>(); var solutionFolder = new Mock<ISolutionFolder>(); var policy = new Mock<IDefaultDocumentPolicy>(); const string rootFolder = @"Z:\some\path"; solutionFolder.Setup(x => x.GetDirectoryName()) .Returns(rootFolder); policy.Setup(x => x.ContainsDefaultDocument(It.IsAny<string>())) .Returns(true); var server = new Mock<IWebServer>(); var impl = new WelcomePageImpl(solutionFolder.Object, policy.Object, itemOperations.Object, server.Object); // Act impl.OnAfterOpenSolution(); impl.OnViewWelcomePage(); // Assert // Server should be started. server.Verify(x => x.Start(It.IsAny<Uri>(), rootFolder), Times.AtLeastOnce()); // Browser should be opened twice: once for solution, once for menu item. itemOperations.Verify(x => x.Navigate(It.IsAny<string>()), Times.Exactly(2)); }