internal async void Run(object sender, EventArgs e) { if (IdeApp.ProjectOperations.IsBuilding(IdeApp.ProjectOperations.CurrentSelectedSolution) || IdeApp.ProjectOperations.IsRunning(IdeApp.ProjectOperations.CurrentSelectedSolution)) { return; } var foundTest = UnitTestService.SearchTestById(testCase); if (foundTest != null) { RunTest(foundTest); return; } bool buildBeforeExecuting = IdeApp.Preferences.BuildBeforeRunningTests; if (buildBeforeExecuting) { await IdeApp.ProjectOperations.Build(project).Task; await UnitTestService.RefreshTests(CancellationToken.None); } foundTest = UnitTestService.SearchTestById(testCase); if (foundTest != null) { RunTest(foundTest); } else { UnitTestService.ReportExecutionError(GettextCatalog.GetString("Unit test '{0}' could not be loaded.", testCase)); } }