From db49334169135b8b9ef15e461ca83c0cc0d87075 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20Kr=C3=BCger?= Date: Thu, 27 Sep 2018 15:37:06 +0200 Subject: Fixes issue #6014 [Regression] Unit-tests execution The multiple application output window got introduced by 65c5f17f86fc77f8add6c6090aa526c2cb2a6009 that introduced that an in progress output window can't be re used. Ending the progress on dispose as well fixes that issue for unit tests. --- main/src/addins/MonoDevelop.UnitTesting/Gui/TestPad.cs | 8 +++++++- .../addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs | 3 +-- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'main/src/addins/MonoDevelop.UnitTesting') diff --git a/main/src/addins/MonoDevelop.UnitTesting/Gui/TestPad.cs b/main/src/addins/MonoDevelop.UnitTesting/Gui/TestPad.cs index 64d2f18591..235d0213f1 100644 --- a/main/src/addins/MonoDevelop.UnitTesting/Gui/TestPad.cs +++ b/main/src/addins/MonoDevelop.UnitTesting/Gui/TestPad.cs @@ -481,10 +481,15 @@ namespace MonoDevelop.UnitTesting void OnStopClicked (object sender, EventArgs args) { + StopRunningTests (); + } + + void StopRunningTests () + { if (runningTestOperation != null) runningTestOperation.Cancel (); } - + UnitTest GetSelectedTest () { ITreeNavigator nav = TreeView.GetSelectedNode (); @@ -538,6 +543,7 @@ namespace MonoDevelop.UnitTesting if (bringToFront) IdeApp.Workbench.GetPad ().BringToFront (); + StopRunningTests (); runningTestOperation = UnitTestService.RunTests (tests, context); runningTestOperation.Task.ContinueWith (t => OnTestSessionCompleted (), TaskScheduler.FromCurrentSynchronizationContext ()); return runningTestOperation; diff --git a/main/src/addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs b/main/src/addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs index f846b414ed..4b845b9298 100644 --- a/main/src/addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs +++ b/main/src/addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs @@ -129,9 +129,8 @@ namespace MonoDevelop.UnitTesting if (t.OwnerObject is IBuildTarget bt) build_targets.Add (bt); } - var res = await IdeApp.ProjectOperations.CheckAndBuildForExecute ( - build_targets, IdeApp.Workspace.ActiveConfiguration, IdeApp.Preferences.BuildBeforeRunningTests, + build_targets, IdeApp.Workspace.ActiveConfiguration, buildWithoutPrompting: !IdeApp.Preferences.BuildBeforeRunningTests, false, null, cs.Token); if (!res) -- cgit v1.2.3