public void ConnectControlSingleton_Remove_SelectedServerIsConnected_StudioRepositoryDisconnectIsCalled() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var environmentRepository = new Mock <IServerRepository>(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, Guid.NewGuid(), CommonSetupHelper.CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; serverProvider.Setup(s => s.Load()).Returns(environmentModels); IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); var selectedServer = connectControlSingleton.Servers[1]; selectedServer.IsConnected = true; var environmentId = Guid.NewGuid(); var eventRaised = false; var selectedId = selectedServer.Server.EnvironmentID; connectControlSingleton.ConnectedServerChanged += (sender, arg) => { environmentId = arg.EnvironmentId; eventRaised = true; }; //------------Execute Test--------------------------- connectControlSingleton.Remove(selectedId); //------------Assert Results------------------------- Assert.IsNotNull(connectControlSingleton); Assert.AreEqual(Guid.Empty, environmentId); Assert.IsTrue(eventRaised); }
public void ConnectControlSingleton_ToggleConnection_SelectedServerIsDisconnected_StudioRepositoryLoadIsCalled() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var environmentRepository = new Mock <IServerRepository>(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, Guid.NewGuid(), CommonSetupHelper.CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; serverProvider.Setup(s => s.Load()).Returns(environmentModels); IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); var selectedServer = connectControlSingleton.Servers[1]; selectedServer.IsConnected = false; var actualConnectedState = ConnectionEnumerations.ConnectedState.Disconnected; var actualDoCallback = false; var environmentId = Guid.Empty; connectControlSingleton.ConnectedStatusChanged += (sender, arg) => { actualConnectedState = arg.ConnectedStatus; actualDoCallback = arg.DoCallback; environmentId = arg.EnvironmentId; }; //------------Execute Test--------------------------- connectControlSingleton.ToggleConnection(1); //------------Assert Results------------------------- Assert.IsNotNull(connectControlSingleton); Assert.AreEqual(ConnectionEnumerations.ConnectedState.Busy, actualConnectedState); Assert.IsFalse(actualDoCallback); Assert.AreEqual(selectedServer.Server.EnvironmentID, environmentId); }
public void ConnectControlSingleton_SetConnectionState_WhenThereIsASubscriber_RaisesAnEvent() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, Guid.NewGuid(), CommonSetupHelper.CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; serverProvider.Setup(s => s.Load()).Returns(environmentModels); var environmentRepository = new Mock <IServerRepository>(); var expectedServerId = Guid.NewGuid(); var actualId = Guid.Empty; const ConnectionEnumerations.ConnectedState expectedConnectedState = ConnectionEnumerations.ConnectedState.Busy; var actualConnectedState = ConnectionEnumerations.ConnectedState.Disconnected; IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); connectControlSingleton.ConnectedStatusChanged += (s, a) => { actualId = a.EnvironmentId; actualConnectedState = a.ConnectedStatus; }; //------------Execute Test--------------------------- connectControlSingleton.SetConnectionState(expectedServerId, expectedConnectedState); //------------Assert Results------------------------- Assert.AreEqual(expectedServerId, actualId); Assert.AreEqual(expectedConnectedState, actualConnectedState); }
public void ConnectControlSingleton_EditConnection_SelectedServerIndexIsOutOfRange_StudioResourceRepositoryDisconnectIsNotCalled() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var environmentRepository = new Mock <IServerRepository>(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, Guid.NewGuid(), CommonSetupHelper.CreateConnection(true).Object, new Mock <IResourceRepository>().Object, false), new TestServer(new Mock <IEventAggregator>().Object, Guid.NewGuid(), CommonSetupHelper.CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; serverProvider.Setup(s => s.Load()).Returns(environmentModels); IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); var wasCallbackInvoked = false; //------------Execute Test--------------------------- connectControlSingleton.EditConnection(99, index => { wasCallbackInvoked = true; }); connectControlSingleton.EditConnection(-1, index => { wasCallbackInvoked = true; }); //------------Assert Results------------------------- Assert.IsNotNull(connectControlSingleton); Assert.IsFalse(wasCallbackInvoked); }
public void ConnectControlSingleton_EditConnection_ServerUriIsChangedWhenItsConnected_StudioResourceRepositoryDisconnectIsCalled() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var server1 = Guid.NewGuid(); var server2 = Guid.NewGuid(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, server1, CommonSetupHelper.CreateConnection(true).Object, new Mock <IResourceRepository>().Object, false), new TestServer(new Mock <IEventAggregator>().Object, server2, CommonSetupHelper.CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; var environmentRepository = new Mock <IServerRepository>(); var environments = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, server1, CommonSetupHelper.CreateConnection(false, new Uri("http://azureprivatecloud/machine1:3142")).Object, new Mock <IResourceRepository>().Object, false), new TestServer(new Mock <IEventAggregator>().Object, server2, CommonSetupHelper.CreateConnection(false, new Uri("http://azureprivatecloud/machine2:3142")).Object, new Mock <IResourceRepository>().Object, false) }; environmentRepository.Setup(e => e.All()).Returns(environments); serverProvider.Setup(s => s.Load()).Returns(environmentModels); IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); var selectedIndex = -1; //------------Execute Test--------------------------- connectControlSingleton.EditConnection(1, index => { selectedIndex = index; }); //------------Assert Results------------------------- Assert.IsNotNull(connectControlSingleton); Assert.AreEqual(1, selectedIndex); }
public void ConnectControlSingleton_EditConnection_AuthNotChangedOnTheDialog_StudioResourceRepositoryLoadIsNotCalled() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var server1 = Guid.NewGuid(); var server2 = Guid.NewGuid(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, server1, CommonSetupHelper.CreateConnection(false, new Uri("http://localhost:3142/dsf"), AuthenticationType.Public).Object, new Mock <IResourceRepository>().Object, false), new TestServer(new Mock <IEventAggregator>().Object, server2, CommonSetupHelper.CreateConnection(false, new Uri("http://localhost:3142/dsf"), AuthenticationType.Public).Object, new Mock <IResourceRepository>().Object, false) }; var environmentRepository = new Mock <IServerRepository>(); var environments = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, server1, CommonSetupHelper.CreateConnection(false, new Uri("http://localhost:3142/dsf"), AuthenticationType.Public).Object, new Mock <IResourceRepository>().Object, false), new TestServer(new Mock <IEventAggregator>().Object, server2, CommonSetupHelper.CreateConnection(false, new Uri("http://localhost:3142/dsf"), AuthenticationType.Public).Object, new Mock <IResourceRepository>().Object, false) }; environmentRepository.Setup(e => e.All()).Returns(environments); serverProvider.Setup(s => s.Load()).Returns(environmentModels); IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); connectControlSingleton.ConnectedStatusChanged += (sender, arg) => { }; //------------Execute Test--------------------------- connectControlSingleton.EditConnection(1, index => { }); //------------Assert Results------------------------- }
public void ConnectControlSingleton_ToggleConnection_SelectedServerIndexIsOutofRange_StudioRepositoryLoadIsNotCalled() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var environmentRepository = new Mock <IServerRepository>(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, Guid.NewGuid(), CommonSetupHelper.CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; serverProvider.Setup(s => s.Load()).Returns(environmentModels); IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); var eventWasRaised = false; connectControlSingleton.ConnectedStatusChanged += (sender, arg) => { eventWasRaised = true; }; //------------Execute Test--------------------------- connectControlSingleton.ToggleConnection(99); connectControlSingleton.ToggleConnection(-1); //------------Assert Results------------------------- Assert.IsNotNull(connectControlSingleton); Assert.IsFalse(eventWasRaised); }
public void ConnectControlSingleton_Constructor_ServerProviderReturnsNoEnvironment_WillHaveAtLeastOneEnvironmentLoaded() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var environmentRepository = new Mock <IServerRepository>(); var environmentModels = new List <IServer>(); serverProvider.Setup(s => s.Load()).Returns(environmentModels); //------------Execute Test--------------------------- IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); //------------Assert Results------------------------- Assert.IsNotNull(connectControlSingleton); Assert.IsNotNull(connectControlSingleton.Servers); Assert.AreEqual(1, connectControlSingleton.Servers.Count); Assert.AreEqual(ConnectControlSingleton.NewServerText, connectControlSingleton.Servers[0].DisplayName); }
public void ConnectControlSingleton_Constructor_ServerProviderReturnsOneEnvironment_WillHaveTwoEnvironmentsLoaded() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var environmentRepository = new Mock <IServerRepository>(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, Guid.NewGuid(), CommonSetupHelper.CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; serverProvider.Setup(s => s.Load()).Returns(environmentModels); //------------Execute Test--------------------------- IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); //------------Assert Results------------------------- Assert.IsNotNull(connectControlSingleton); Assert.IsNotNull(connectControlSingleton.Servers); Assert.AreEqual(2, connectControlSingleton.Servers.Count); }
public void ConnectControlSingleton_EditConnection_AuthChangedOnTheDialog_StudioResourceRepositoryLoadIsCalled() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var server1 = Guid.NewGuid(); var server2 = Guid.NewGuid(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, server1, CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false), new TestServer(new Mock <IEventAggregator>().Object, server2, CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; var environmentRepository = new Mock <IServerRepository>(); var environments = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, server1, CreateConnection(false, new Uri("http://localhost:3142/dsf"), AuthenticationType.Anonymous).Object, new Mock <IResourceRepository>().Object, false), new TestServer(new Mock <IEventAggregator>().Object, server2, CreateConnection(false, new Uri("http://localhost:3142/dsf"), AuthenticationType.Public).Object, new Mock <IResourceRepository>().Object, false) }; environmentRepository.Setup(e => e.All()).Returns(environments); serverProvider.Setup(s => s.Load()).Returns(environmentModels); IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); var selectedIndex = -1; ConnectionEnumerations.ConnectedState actualConnectedState = ConnectionEnumerations.ConnectedState.Disconnected; bool actualDoCallback = false; Guid environmentId = Guid.Empty; connectControlSingleton.ConnectedStatusChanged += (sender, arg) => { actualConnectedState = arg.ConnectedStatus; actualDoCallback = arg.DoCallback; environmentId = arg.EnvironmentId; }; //------------Execute Test--------------------------- connectControlSingleton.EditConnection(1, index => { selectedIndex = index; }); //------------Assert Results------------------------- Assert.IsNotNull(connectControlSingleton); Assert.AreEqual(ConnectionEnumerations.ConnectedState.Busy, actualConnectedState); Assert.IsFalse(actualDoCallback); Assert.AreEqual(server1, environmentId); Assert.AreEqual(1, selectedIndex); }
public void ConnectControlSingleton_EditConnection_ServerUriIsNotChangedOnTheDialog_StudioResourceRepositoryLoadIsNotCalled() { var serverProvider = new Mock <IEnvironmentModelProvider>(); var environmentModels = new List <IServer> { new TestServer(new Mock <IEventAggregator>().Object, Guid.NewGuid(), CommonSetupHelper.CreateConnection(true).Object, new Mock <IResourceRepository>().Object, false), new TestServer(new Mock <IEventAggregator>().Object, Guid.NewGuid(), CommonSetupHelper.CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; var environmentRepository = new Mock <IServerRepository>(); environmentRepository.Setup(e => e.All()).Returns(environmentModels); serverProvider.Setup(s => s.Load()).Returns(environmentModels); IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); var selectedIndex = -1; //------------Execute Test--------------------------- connectControlSingleton.EditConnection(1, index => { selectedIndex = index; }); //------------Assert Results------------------------- Assert.IsNotNull(connectControlSingleton); Assert.AreEqual(1, selectedIndex); }
public void TestInitialize() { _serverMock = new Mock <IServer>(); _serverMock.Setup(server => server.GetServerVersion()).Returns("1.1.2"); var explorerRepositoryMock = new Mock <IExplorerRepository>(); explorerRepositoryMock.Setup(it => it.GetVersions(It.IsAny <Guid>())).Returns(new List <IVersionInfo>()); _serverMock.SetupGet(it => it.ExplorerRepository).Returns(explorerRepositoryMock.Object); _explorerItemMock = new Mock <IExplorerItem>(); _explorerItemMock.SetupGet(it => it.Children).Returns(new ObservableCollection <IExplorerItem>()); _serverMock.Setup(it => it.LoadExplorer(false)).ReturnsAsync(_explorerItemMock.Object); _studioUpdateManagerMock = new Mock <IStudioUpdateManager>(); _serverMock.SetupGet(it => it.UpdateRepository).Returns(_studioUpdateManagerMock.Object); _serverMock.SetupGet(it => it.DisplayName).Returns("someResName"); _serverMock.Setup(server => server.Connection).Returns(CreateConnection(true).Object); _selectedEnvironment = new Mock <IEnvironmentViewModel>(); _selectedEnvironment.Setup(p => p.DisplayName).Returns("someResName"); _selectedEnvironment.Setup(model => model.Children).Returns(new AsyncObservableCollection <IExplorerItemViewModel>()); var mockConnectControl = new Mock <IConnectControlViewModel>(); mockConnectControl.Setup(model => model.Servers).Returns(new AsyncObservableCollection <IServer> { _serverMock.Object }); var mockExplorerViewModel = new Mock <IExplorerViewModel>(); mockExplorerViewModel.Setup(model => model.Environments).Returns(new AsyncObservableCollection <IEnvironmentViewModel> { _selectedEnvironment.Object }); mockExplorerViewModel.Setup(model => model.ConnectControlViewModel).Returns(mockConnectControl.Object); _shellViewModelMock = new Mock <IShellViewModel>(); _shellViewModelMock.Setup(model => model.ExplorerViewModel).Returns(mockExplorerViewModel.Object); _shellViewModelMock.SetupGet(it => it.LocalhostServer).Returns(_serverMock.Object); _shellViewModelMock.SetupGet(it => it.ExplorerViewModel).Returns(mockExplorerViewModel.Object); _eventAggregatorMock = new Mock <IEventAggregator>(); _mergeView = new Mock <IMergeView>(); var serverProvider = new Mock <IEnvironmentModelProvider>(); var environmentModels = new List <IServer> { new TestServer(new Mock <Caliburn.Micro.IEventAggregator>().Object, Guid.NewGuid(), CreateConnection(true).Object, new Mock <IResourceRepository>().Object, false), new TestServer(new Mock <Caliburn.Micro.IEventAggregator>().Object, Guid.NewGuid(), CreateConnection(false).Object, new Mock <IResourceRepository>().Object, false) }; var environmentRepository = new Mock <IServerRepository>(); environmentRepository.Setup(e => e.All()).Returns(environmentModels); serverProvider.Setup(s => s.Load()).Returns(environmentModels); serverProvider.Setup(s => s.ReloadServers()).Returns(environmentModels); IConnectControlSingleton connectControlSingleton = new ConnectControlSingleton(serverProvider.Object, environmentRepository.Object); //------------Execute Test--------------------------- CustomContainer.Register(environmentRepository.Object); CustomContainer.Register(connectControlSingleton); var resourceId = Guid.NewGuid(); var explorerItemViewModelMock = new Mock <IExplorerItemViewModel>(); explorerItemViewModelMock.SetupGet(it => it.IsVisible).Returns(true); explorerItemViewModelMock.SetupGet(it => it.ResourceType).Returns("WorkflowService"); explorerItemViewModelMock.SetupGet(it => it.ResourceName).Returns("Selected Service"); explorerItemViewModelMock.SetupGet(it => it.ResourceId).Returns(resourceId); explorerItemViewModelMock.Setup(model => model.Server).Returns(_serverMock.Object); _target = new MergeServiceViewModel(_shellViewModelMock.Object, _eventAggregatorMock.Object, explorerItemViewModelMock.Object, _mergeView.Object, _serverMock.Object); }
public void RefreshConnectControl() { ConnectControlSingleton.Refresh(_environment.ID); }