Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLluis Sanchez <llsan@microsoft.com>2019-05-09 18:33:58 +0300
committerLluis Sanchez <llsan@microsoft.com>2019-05-23 14:39:15 +0300
commita31fca602f8bf7ab7c6fe51aba0115749ece0534 (patch)
tree625942ec34d6d6c7b128c8e49a9f34889a228798 /main/src/addins/MonoDevelop.UnitTesting
parenta8a86f596191f8b18fe0e895d0f5af924d1b04ac (diff)
Improve unit test service initialization time
Delay initialization of package service until the first solution is opened
Diffstat (limited to 'main/src/addins/MonoDevelop.UnitTesting')
-rw-r--r--main/src/addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs16
1 files changed, 11 insertions, 5 deletions
diff --git a/main/src/addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs b/main/src/addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs
index 04c3715e09..ba945712a3 100644
--- a/main/src/addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs
+++ b/main/src/addins/MonoDevelop.UnitTesting/Services/UnitTestService.cs
@@ -50,6 +50,7 @@ namespace MonoDevelop.UnitTesting
{
static ArrayList providers = new ArrayList ();
static UnitTest[] rootTests = Array.Empty<UnitTest> ();
+ static bool packageEventsInitialized;
static UnitTestService ()
{
@@ -61,11 +62,16 @@ namespace MonoDevelop.UnitTesting
IdeApp.Workspace.ItemRemovedFromSolution += OnItemsChangedInSolution;
IdeApp.Workspace.ReferenceAddedToProject += OnReferenceChangedInProject;
IdeApp.Workspace.ReferenceRemovedFromProject += OnReferenceChangedInProject;
-
- PackageManagementServices.ProjectOperations.PackageReferenceAdded += ProjectOperations_PackageReferencesModified;
- PackageManagementServices.ProjectOperations.PackageReferenceRemoved += ProjectOperations_PackageReferencesModified;
- PackageManagementServices.ProjectOperations.PackagesRestored += ProjectOperations_PackageReferencesModified;
-
+
+ IdeApp.Workspace.FirstWorkspaceItemOpened += (s,a) => {
+ if (!packageEventsInitialized) {
+ packageEventsInitialized = true;
+ PackageManagementServices.ProjectOperations.PackageReferenceAdded += ProjectOperations_PackageReferencesModified;
+ PackageManagementServices.ProjectOperations.PackageReferenceRemoved += ProjectOperations_PackageReferencesModified;
+ PackageManagementServices.ProjectOperations.PackagesRestored += ProjectOperations_PackageReferencesModified;
+ }
+ };
+
Mono.Addins.AddinManager.AddExtensionNodeHandler ("/MonoDevelop/UnitTesting/TestProviders", OnExtensionChange);
RebuildTests ();