From 776d564105998a8d3f0adcebf39372a78e1f5e0c Mon Sep 17 00:00:00 2001 From: Matt Ward Date: Mon, 25 Apr 2011 20:26:38 +0100 Subject: [PATCH] Disable support for running PowerShell scripts in Add Package Reference dialog. --- .../Project/Src/ProcessPackageAction.cs | 11 ++++++++++- .../Test/Src/ProcessPackageActionTests.cs | 11 +++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs b/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs index 5e32cf53f5..42e7f0128c 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs @@ -40,7 +40,9 @@ namespace ICSharpCode.PackageManagement public void Execute() { BeforeExecute(); - using (RunPackageScriptsAction runScriptsAction = CreateRunPackageScriptsAction()) { + if (PackageScriptSession != null) { + ExecuteWithSession(); + } else { ExecuteCore(); } } @@ -52,6 +54,13 @@ namespace ICSharpCode.PackageManagement GetPackageIfMissing(); } + void ExecuteWithSession() + { + using (RunPackageScriptsAction runScriptsAction = CreateRunPackageScriptsAction()) { + ExecuteCore(); + } + } + RunPackageScriptsAction CreateRunPackageScriptsAction() { return CreateRunPackageScriptsAction(PackageScriptSession, Project); diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs index 8e71ae7bd6..2e1dec4b97 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs @@ -84,6 +84,7 @@ namespace PackageManagement.Tests CreateAction(); var expectedProject = new FakePackageManagementProject(); action.Project = expectedProject; + action.PackageScriptSession = new FakePackageScriptSession(); action.Execute(); var actualProject = action.ProjectPassedToCreateRunPackageScriptsAction; @@ -95,9 +96,19 @@ namespace PackageManagement.Tests public void Execute_MethodCalled_RunPackageScriptsActionIsDisposed() { CreateAction(); + action.PackageScriptSession = new FakePackageScriptSession(); action.Execute(); Assert.IsTrue(action.IsRunPackageScriptsActionDisposed); } + + [Test] + public void Execute_NullSession_RunPackageScriptsActionIsNotCreated() + { + CreateAction(); + action.Execute(); + + Assert.IsFalse(action.IsRunPackageScriptsActionCreated); + } } }