Browse Source

Support LocalPath property in an EnvDTE.ProjectItem.Properties.

pull/79/head
Matt Ward 12 years ago
parent
commit
9fc8710252
  1. 3
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs
  2. 1
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItemPropertyFactory.cs
  3. 21
      src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemPropertyTests.cs

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

@ -21,6 +21,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -21,6 +21,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE
public const string CopyToOutputDirectoryPropertyName = "CopyToOutputDirectory";
public const string CustomToolPropertyName = "CustomTool";
public const string FullPathPropertyName = "FullPath";
public const string LocalPathPropertyName = "LocalPath";
public ProjectItem(Project project, FileProjectItem projectItem)
{
@ -93,7 +94,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -93,7 +94,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE
return GetCopyToOutputDirectory();
} else if (name == CustomToolPropertyName) {
return projectItem.CustomTool;
} else if (name == FullPathPropertyName) {
} else if ((name == FullPathPropertyName) || (name == LocalPathPropertyName)) {
return projectItem.FileName;
}
return String.Empty;

1
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItemPropertyFactory.cs

@ -32,6 +32,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -32,6 +32,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE
yield return new ProjectItemProperty(projectItem, ProjectItem.CopyToOutputDirectoryPropertyName);
yield return new ProjectItemProperty(projectItem, ProjectItem.CustomToolPropertyName);
yield return new ProjectItemProperty(projectItem, ProjectItem.FullPathPropertyName);
yield return new ProjectItemProperty(projectItem, ProjectItem.LocalPathPropertyName);
}
}
}

21
src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemPropertyTests.cs

@ -139,7 +139,7 @@ namespace PackageManagement.Tests.EnvDTE @@ -139,7 +139,7 @@ namespace PackageManagement.Tests.EnvDTE
string path = properties.Item("FullPath").Value as string;
Assert.AreEqual(@"d:\projects\test.cs", path);
}
}
[Test]
public void GetEnumerator_FindFullPathPropertyInAllProperties_ReturnsPropertyWithFullPathName()
@ -148,5 +148,24 @@ namespace PackageManagement.Tests.EnvDTE @@ -148,5 +148,24 @@ namespace PackageManagement.Tests.EnvDTE
AssertContainsProperty("FullPath", properties);
}
[Test]
public void Value_GetLocalPath_ReturnsProjectItemFullFileName()
{
CreateProjectItemProperties();
msbuildFileProjectItem.FileName = @"d:\projects\test.cs";
string path = properties.Item("LocalPath").Value as string;
Assert.AreEqual(@"d:\projects\test.cs", path);
}
[Test]
public void GetEnumerator_FindLocalPathPropertyInAllProperties_ReturnsPropertyWithFullPathName()
{
CreateProjectItemProperties();
AssertContainsProperty("LocalPath", properties);
}
}
}

Loading…
Cancel
Save