diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItems.cs b/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItems.cs index e1b4d3cf1e..a96d3dca8c 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItems.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItems.cs @@ -88,7 +88,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE return item; } } - return null; + throw new ArgumentException("Unable to find item: " + name, "name"); } internal virtual ProjectItem Item(int index) diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemsTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemsTests.cs index 9fec6053a6..bbf272916a 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemsTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemsTests.cs @@ -831,5 +831,14 @@ namespace PackageManagement.Tests.EnvDTE Assert.AreEqual("AccountController.cs", projectItem.Name); } + + [Test] + public void Item_UnknownProjectItemName_ThrowsException() + { + CreateProjectItems(); + msbuildProject.AddFile("Program.cs"); + + Assert.Throws(() => projectItems.Item("unknown.cs")); + } } }