Browse Source

Implement EnvDTE.ProjectItem.Remove()

pull/28/head
Matt Ward 13 years ago
parent
commit
d3688f4c13
  1. 5
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Project.cs
  2. 10
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs
  3. 24
      src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemTests.cs

5
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Project.cs

@ -275,5 +275,10 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -275,5 +275,10 @@ namespace ICSharpCode.PackageManagement.EnvDTE
{
return fileService.GetCompilationUnit(fileName);
}
internal void RemoveProjectItem(ProjectItem projectItem)
{
projectService.RemoveProjectItem(MSBuildProject, projectItem.MSBuildProjectItem);
}
}
}

10
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs

@ -149,5 +149,15 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -149,5 +149,15 @@ namespace ICSharpCode.PackageManagement.EnvDTE
{
return projectItem.Include;
}
public virtual void Remove()
{
ContainingProject.RemoveProjectItem(this);
ContainingProject.Save();
}
internal FileProjectItem MSBuildProjectItem {
get { return projectItem; }
}
}
}

24
src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemTests.cs

@ -193,5 +193,29 @@ namespace PackageManagement.Tests.EnvDTE @@ -193,5 +193,29 @@ namespace PackageManagement.Tests.EnvDTE
Assert.AreEqual(@"d:\projects\MyProject\src\program.cs", fakeFileService.FileNamePassedToGetCompilationUnit);
Assert.AreEqual(0, codeElements.Count);
}
[Test]
public void Remove_FileItemInProject_FileItemRemovedFromProject()
{
CreateProjectItems();
msbuildProject.AddFile(@"program.cs");
ProjectItem fileItem = projectItems.Item("program.cs");
fileItem.Remove();
Assert.AreEqual(0, msbuildProject.Items.Count);
}
[Test]
public void Remove_FileItemInProject_ProjectIsSaved()
{
CreateProjectItems();
msbuildProject.AddFile(@"program.cs");
ProjectItem fileItem = projectItems.Item("program.cs");
fileItem.Remove();
Assert.IsTrue(msbuildProject.IsSaved);
}
}
}

Loading…
Cancel
Save