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)); }