private void CreateAnalysis() { var viewModel = _analysesSidePanel.CreateNewAnalysis(); viewModel.OnRemove += AnalysisViewModelOnOnRemove; SelectedAnalysis = viewModel; }
public void TestRemoveAnalysis1() { var sidePanel = new AnalysesSidePanel(_dispatcher, _taskScheduler, _analysisStorage.Object, _pluginRegistry); var viewModel = sidePanel.CreateNewAnalysis(); sidePanel.Active.Should().HaveCount(1); viewModel.RemoveCommand.Execute(null); sidePanel.Active.Should().BeEmpty("because we've just removed the only analysis"); }
public void TestCreateNew() { var sidePanel = new AnalysesSidePanel(_dispatcher, _taskScheduler, _analysisStorage.Object, _pluginRegistry); sidePanel.HasActiveAnalyses.Should().BeFalse(); sidePanel.Active.Should().BeEmpty(); sidePanel.CreateNewAnalysis(); sidePanel.HasActiveAnalyses.Should().BeTrue(); sidePanel.Active.Should().HaveCount(1); }
public void TestRemoveAnalysis2() { var sidePanel = new AnalysesSidePanel(_dispatcher, _taskScheduler, _analysisStorage.Object, _pluginRegistry); var viewModel = sidePanel.CreateNewAnalysis(); sidePanel.Active.Should().HaveCount(1); _analysisStorage.Verify(x => x.Remove(It.IsAny <AnalysisId>()), Times.Never); viewModel.RemoveCommand.Execute(null); _analysisStorage.Verify(x => x.Remove(It.Is <AnalysisId>(y => y == viewModel.Id)), Times.Once, "because the view model is responsible for removing the analysis (so it doesn't continue to run in the background)"); }