Dev2.Core.Tests.NavigationViewModelTest.NavigationViewModel_UpdateWorkspaces_IfConnectedThenRefresh C# (CSharp) Method

NavigationViewModel_UpdateWorkspaces_IfConnectedThenRefresh() private method

        public void NavigationViewModel_UpdateWorkspaces_IfConnectedThenRefresh()
        {
            //Arrange
            Mock<IEnvironmentModel> mockEnvironment = EnviromentRepositoryTest.CreateMockEnvironment();
            mockEnvironment.Setup(model => model.CanStudioExecute).Returns(true);
            mockEnvironment.Setup(model => model.ID).Returns(Guid.Empty);
            mockEnvironment.Setup(a => a.IsConnected).Returns(true);
            var environmentRepository = GetEnvironmentRepository(mockEnvironment);
            const string displayName = "localhost (https://localhost:3242/)";

            ObservableCollection<IExplorerItemModel> explorerItemModels = new ObservableCollection<IExplorerItemModel>();
            ExplorerItemModel server = new ExplorerItemModel { ResourceType = Common.Interfaces.Data.ResourceType.Server, DisplayName = displayName, IsExplorerExpanded = true, EnvironmentId = Guid.Empty };
            ExplorerItemModel folder1 = new ExplorerItemModel { ResourceType = Common.Interfaces.Data.ResourceType.Folder, DisplayName = "Folder1", ResourcePath = "Folder1", IsExplorerExpanded = true, EnvironmentId = Guid.Empty };
            ExplorerItemModel resource1 = new ExplorerItemModel { ResourceType = Common.Interfaces.Data.ResourceType.WorkflowService, DisplayName = "Resource1", ResourcePath = "Resource1", IsExplorerExpanded = false, EnvironmentId = Guid.Empty };
            ExplorerItemModel resource2 = new ExplorerItemModel { ResourceType = Common.Interfaces.Data.ResourceType.WorkflowService, DisplayName = "Resource2", ResourcePath = "Resource2", IsExplorerExpanded = false, IsExplorerSelected = true, EnvironmentId = Guid.Empty };
            ExplorerItemModel folder2 = new ExplorerItemModel { ResourceType = Common.Interfaces.Data.ResourceType.Folder, DisplayName = "Folder2", ResourcePath = "Folder2", IsExplorerExpanded = false, EnvironmentId = Guid.Empty };

            folder1.Children.Add(resource1);
            folder1.Children.Add(resource2);
            server.Children.Add(folder1);
            server.Children.Add(folder2);
            explorerItemModels.Add(server);

            var mockStudioRepo = new Mock<IStudioResourceRepository>();
            mockStudioRepo.SetupGet(p => p.ExplorerItemModels).Returns(explorerItemModels);

            var viewmodel = new NavigationViewModel(new Mock<IEventAggregator>().Object, new TestAsyncWorker(), null, environmentRepository, mockStudioRepo.Object, new Mock<IConnectControlSingleton>().Object, () => { }) { SelectedItem = resource2 };

            viewmodel.Environments.Add(mockEnvironment.Object);
            viewmodel.ExplorerItemModels = explorerItemModels;
            var connectControlSingletonMock = new Mock<IConnectControlSingleton>();
            //Act
            viewmodel.UpdateWorkspaces(connectControlSingletonMock.Object);
            //Assert
            connectControlSingletonMock.Verify(a=>a.Refresh(Guid.Empty),Times.Exactly(1));
        }
NavigationViewModelTest