public void ConnectControlViewModel_OnServerOnNetworkStateChanged_GivenLocalhostAndIsNotConnecting_ResultServerDisconnected() { //------------Setup for test-------------------------- _serverMock.Setup(server => server.IsConnected).Returns(false); var args = new Mock <INetworkStateChangedEventArgs>(); args.Setup(eventArgs => eventArgs.State).Returns(ConnectionNetworkState.Disconnected); var localhost = new Mock <IServer>(); localhost.Setup(server => server.IsConnected).Returns(false); localhost.Setup(server => server.DisplayName).Returns("localhost (Connected)"); var connectControlViewModel = new ConnectControlViewModel(_serverMock.Object, new EventAggregator()); //------------Execute Test--------------------------- var popupController = new Mock <IPopupController>(); popupController.Setup( controller => controller.Show(It.IsAny <string>(), It.IsAny <string>(), MessageBoxButton.OK, MessageBoxImage.Warning, It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <bool>())); var privateObject = new Testing.PrivateObject(connectControlViewModel); privateObject.SetProperty("IsConnecting", false); privateObject.Invoke("OnServerOnNetworkStateChanged", args.Object, _serverMock.Object); //------------Assert Results------------------------- Assert.IsFalse(connectControlViewModel.IsConnected); }
public void ConnectControlViewModel_LoadServers_GivenSelectedServer_ResultIsSelectedServer() { //------------Setup for test-------------------------- _serverMock.Setup(server => server.IsConnected).Returns(true); var store = new Mock <IServer>(); store.Setup(server => server.DisplayName).Returns("WarewolfStore"); var mockEnvironmentConnection = SetupMockConnection(); var intergration = new Mock <IServer>(); intergration.Setup(server => server.DisplayName).Returns("RemoteIntergration"); var intergrationId = Guid.NewGuid(); intergration.Setup(server => server.EnvironmentID).Returns(intergrationId); intergration.SetupGet(it => it.Connection).Returns(mockEnvironmentConnection.Object); var connectControlViewModel = new ConnectControlViewModel(_serverMock.Object, new EventAggregator()); //------------Execute Test--------------------------- var privateObject = new Testing.PrivateObject(connectControlViewModel); privateObject.SetField("_selectedId", intergrationId); connectControlViewModel.LoadServers(); connectControlViewModel.SelectedConnection = intergration.Object; //------------Assert Results------------------------- Assert.AreEqual(intergrationId, connectControlViewModel.SelectedConnection.EnvironmentID); }
public void ConnectControlViewModel_ConnectOrDisconnect_GivenServerIsConnectAndServerHasNotLoaded() { //------------Setup for test-------------------------- _serverMock.Setup(server1 => server1.IsConnected).Returns(true); //------------Execute Test--------------------------- var privateObject = new Testing.PrivateObject(_target); privateObject.Invoke("ConnectOrDisconnectAsync"); //------------Assert Results------------------------- Assert.IsFalse(_target.IsConnecting); }
public void ConnectControlViewModel_ConnectOrDisconnect_GivenServerNull() { //------------Setup for test-------------------------- var connectControlViewModel = new ConnectControlViewModel(_serverMock.Object, new EventAggregator()); connectControlViewModel.SelectedConnection = null; //------------Execute Test--------------------------- var privateObject = new Testing.PrivateObject(_target); privateObject.SetField("_selectedConnection", null); privateObject.Invoke("ConnectOrDisconnectAsync"); //------------Assert Results------------------------- Assert.IsFalse(_target.IsConnecting); }
public void ConnectControlViewModel_CheckVersionConflict_ThrowsException() { _serverMock.Setup(server1 => server1.IsConnected).Returns(true); _serverMock.Setup(server1 => server1.GetServerVersion()).Throws(new Exception()); var popupController = new Mock <IPopupController>(); popupController.Setup(controller => controller.ShowConnectServerVersionConflict(It.IsAny <string>(), It.IsAny <string>())); var connectControlViewModel = new ConnectControlViewModel(_serverMock.Object, new EventAggregator(), popupController.Object); //------------Execute Test--------------------------- var privateObject = new Testing.PrivateObject(connectControlViewModel); privateObject.Invoke("CheckVersionConflictAsync"); //------------Assert Results------------------------- }
public void ConnectControlViewModel_CheckVersionConflict_GivenNoVersionConflicts() { //------------Setup for test-------------------------- _serverMock.Setup(server1 => server1.IsConnected).Returns(true); _serverMock.Setup(server1 => server1.GetServerVersion()).Returns("0.0.0.5"); var popupController = new Mock <IPopupController>(); popupController.Setup(controller => controller.ShowConnectServerVersionConflict(It.IsAny <string>(), It.IsAny <string>())); var connectControlViewModel = new ConnectControlViewModel(_serverMock.Object, new EventAggregator(), popupController.Object); //------------Execute Test--------------------------- var privateObject = new Testing.PrivateObject(connectControlViewModel); privateObject.Invoke("CheckVersionConflictAsync"); //------------Assert Results------------------------- popupController.Verify(controller => controller.ShowConnectServerVersionConflict(It.IsAny <string>(), It.IsAny <string>()), Times.AtLeastOnce); }
public void ConnectControlViewModel_UpdateRepositoryOnServerSaved_GivenEmptyGuid_Result() { //------------Setup for test-------------------------- _serverMock.Setup(server => server.IsConnected).Returns(true); var args = new Mock <INetworkStateChangedEventArgs>(); args.Setup(eventArgs => eventArgs.State).Returns(ConnectionNetworkState.Disconnected); var localhost = new Mock <IServer>(); localhost.Setup(server => server.IsConnected).Returns(false); localhost.Setup(server => server.EnvironmentID).Returns(new Guid()); localhost.Setup(server => server.DisplayName).Returns("localhost (Connected)"); var connectControlViewModel = new ConnectControlViewModel(_serverMock.Object, new EventAggregator()); //------------Execute Test--------------------------- var privateObject = new Testing.PrivateObject(connectControlViewModel); privateObject.SetProperty("IsConnecting", false); privateObject.Invoke("UpdateRepositoryOnServerSaved", Guid.Empty, false); //------------Assert Results------------------------- }
public void ConnectControlViewModel_UpdateRepositoryOnServerSaved_GivenLocalhost_Result() { //------------Setup for test-------------------------- var store = new Mock <IServer>(); store.Setup(server => server.DisplayName).Returns("WarewolfStore"); var intergration = new Mock <IServer>(); intergration.Setup(server => server.DisplayName).Returns("RemoteIntergration"); intergration.Setup(server => server.IsConnected).Returns(true); var intergrationId = Guid.NewGuid(); intergration.Setup(server => server.EnvironmentID).Returns(intergrationId); var connectControlViewModel = new ConnectControlViewModel(_serverMock.Object, new EventAggregator()); //------------Execute Test--------------------------- var privateObject = new Testing.PrivateObject(connectControlViewModel); privateObject.SetProperty("IsConnecting", false); privateObject.Invoke("UpdateRepositoryOnServerSaved", intergrationId, false); //------------Assert Results------------------------- Assert.IsNotNull(connectControlViewModel.SelectedConnection); }
public void ConnectControlViewModel_UpdateRepositoryOnServerSaved() { var serverGuid = Guid.NewGuid(); var uri = new Uri("http://bravo.com/"); var serverDisplayName = "johnnyBravoServer"; var mockShellViewModel = new Mock <IShellViewModel>(); var mockExplorerRepository = new Mock <IExplorerRepository>(); var mockEnvironmentConnection = new Mock <IEnvironmentConnection>(); mockEnvironmentConnection.Setup(a => a.AppServerUri).Returns(uri); mockEnvironmentConnection.Setup(a => a.UserName).Returns("johnny"); mockEnvironmentConnection.Setup(a => a.Password).Returns("bravo"); mockEnvironmentConnection.Setup(a => a.WebServerUri).Returns(uri); mockEnvironmentConnection.Setup(a => a.ID).Returns(serverGuid); mockEnvironmentConnection.Setup(a => a.IsConnected).Returns(false); mockEnvironmentConnection.SetupProperty(a => a.DisplayName); mockEnvironmentConnection.Object.DisplayName = serverDisplayName; mockExplorerRepository.Setup( repository => repository.CreateFolder(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Guid>())); mockExplorerRepository.Setup( repository => repository.Rename(It.IsAny <IExplorerItemViewModel>(), It.IsAny <string>())).Returns(true); var server = new ServerForTesting(mockExplorerRepository); server.EnvironmentID = serverGuid; server.ResourceName = "mr_J_bravo"; server.Connection = mockEnvironmentConnection.Object; mockShellViewModel.Setup(a => a.ActiveServer).Returns(server); mockShellViewModel.Setup(model => model.LocalhostServer).Returns(server); CustomContainer.Register <IServer>(server); CustomContainer.Register(mockShellViewModel.Object); var environmentModel = new Mock <IServer>(); environmentModel.SetupGet(a => a.Connection).Returns(mockEnvironmentConnection.Object); environmentModel.SetupGet(a => a.IsConnected).Returns(true); var e1 = new Server(serverGuid, mockEnvironmentConnection.Object); var repo = new TestServerRespository(environmentModel.Object, e1) { ActiveServer = e1 }; var environmentRepository = new ServerRepository(repo); Assert.IsNotNull(environmentRepository); var passed = false; mockShellViewModel.Setup(a => a.OpenResource(It.IsAny <Guid>(), It.IsAny <Guid>(), It.IsAny <IServer>())) .Callback((Guid id1, Guid id2, IServer a) => { passed = a.EnvironmentID == serverGuid; }); //------------Setup for test-------------------------- var connectControlViewModel = new ConnectControlViewModel(server, new EventAggregator()); var privateObject = new Testing.PrivateObject(connectControlViewModel); privateObject.SetProperty("IsConnecting", false); privateObject.Invoke("UpdateRepositoryOnServerSaved", serverGuid, false); //------------Execute Test--------------------------- //------------Assert Results------------------------- Assert.AreEqual("johnnyBravoServer", mockEnvironmentConnection.Object.DisplayName); }