Browse Source

Save project after making changes with PowerShell scripts.

pull/15/head
Matt Ward 15 years ago
parent
commit
f036b01bac
  1. 13
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Property.cs
  2. 6
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/References.cs
  3. 22
      src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectTests.cs

13
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Property.cs

@ -8,13 +8,20 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -8,13 +8,20 @@ namespace ICSharpCode.PackageManagement.EnvDTE
{
public class Property
{
IPackageManagementProjectService projectService;
MSBuildBasedProject project;
string name;
public Property(MSBuildBasedProject project, string name)
: this(project, name, new PackageManagementProjectService())
{
}
public Property(MSBuildBasedProject project, string name, IPackageManagementProjectService projectService)
{
this.project = project;
this.name = name;
this.projectService = projectService;
}
public object Value {
@ -22,7 +29,13 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -22,7 +29,13 @@ namespace ICSharpCode.PackageManagement.EnvDTE
set {
bool escapeValue = false;
project.SetProperty(name, value as string, escapeValue);
SaveProject();
}
}
void SaveProject()
{
projectService.Save(project);
}
}
}

6
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/References.cs

@ -28,6 +28,12 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -28,6 +28,12 @@ namespace ICSharpCode.PackageManagement.EnvDTE
{
var referenceItem = new ReferenceProjectItem(project, path);
projectService.AddProjectItem(project, referenceItem);
SaveProject();
}
void SaveProject()
{
projectService.Save(project);
}
}
}

22
src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectTests.cs

@ -33,6 +33,17 @@ namespace PackageManagement.Tests.EnvDTE @@ -33,6 +33,17 @@ namespace PackageManagement.Tests.EnvDTE
Assert.AreEqual("System.Data", referenceName);
}
[Test]
public void ObjectReferencesAdd_AddGacAssemblyReference_MSBuildProjectIsSaved()
{
CreateProject();
project.Object.References.Add("System.Xml");
bool saved = msbuildProject.IsSaved;
Assert.IsTrue(saved);
}
[Test]
public void PropertiesItemValue_GetPostBuildEvent_ReturnsProjectsPostBuildEvent()
{
@ -64,5 +75,16 @@ namespace PackageManagement.Tests.EnvDTE @@ -64,5 +75,16 @@ namespace PackageManagement.Tests.EnvDTE
Assert.AreEqual("$(SolutionDir)", postBuildEventProperty);
}
[Test]
public void PropertiesItemValue_SetPostBuildEvent_MSBuildProjectIsSaved()
{
CreateProject();
project.Properties.Item("PostBuildEvent").Value = "test";
bool saved = msbuildProject.IsSaved;
Assert.IsTrue(saved);
}
}
}

Loading…
Cancel
Save