Browse Source

Implement EnvDTE.ProjectItems.Kind

Determines whether the project items refer to a folder or file.
pull/28/head
Matt Ward 13 years ago
parent
commit
db529dc711
  1. 4
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/FileProjectItems.cs
  2. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItems.cs
  3. 27
      src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemsTests.cs

4
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/FileProjectItems.cs

@ -63,5 +63,9 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -63,5 +63,9 @@ namespace ICSharpCode.PackageManagement.EnvDTE
{
return Project.AddFileProjectItemWithDependentUsingFullPath(fileName, projectItem.Name);
}
public override string Kind {
get { return global::EnvDTE.Constants.vsProjectItemKindPhysicalFile; }
}
}
}

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItems.cs

@ -139,7 +139,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE @@ -139,7 +139,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE
}
public virtual string Kind {
get { throw new NotImplementedException(); }
get { return global::EnvDTE.Constants.vsProjectItemKindPhysicalFolder; }
}
}
}

27
src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemsTests.cs

@ -5,10 +5,10 @@ using System; @@ -5,10 +5,10 @@ using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using ICSharpCode.PackageManagement;
using ICSharpCode.PackageManagement.EnvDTE;
using ICSharpCode.SharpDevelop.Project;
using Microsoft.VisualStudio;
using NUnit.Framework;
using PackageManagement.Tests.Helpers;
using Rhino.Mocks;
@ -363,6 +363,31 @@ namespace PackageManagement.Tests.EnvDTE @@ -363,6 +363,31 @@ namespace PackageManagement.Tests.EnvDTE
Assert.AreEqual("Program.cs", projectItemName);
}
[Test]
public void Kind_FileProjectItems_ReturnsItemKindPhysicalFile()
{
CreateProjectItems();
msbuildProject.AddFile("program.cs");
string kind = projectItems
.Item("program.cs")
.ProjectItems
.Kind;
Assert.AreEqual(global::EnvDTE.Constants.vsProjectItemKindPhysicalFile, kind);
}
[Test]
public void Kind_ProjectItemsForProject_ReturnsItemKindPhysicalFolder()
{
CreateProjectItems();
msbuildProject.AddFile("program.cs");
string kind = projectItems.Kind;
Assert.AreEqual(global::EnvDTE.Constants.vsProjectItemKindPhysicalFolder, kind);
}
[Test]
public void AddFileFromCopy_FileAlreadyExistsOnFileSystem_ThrowsException()
{

Loading…
Cancel
Save