public void AddItemWithEmptyNameThrows() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); string itemName = ".cs"; string fullItemName = new FileInfo(itemName).FullName; projectNode.AddItem(itemName); }
/// <summary> /// Adds the project reference. /// </summary> /// <param name="projectId">The project id.</param> public void AddProjectReference(Guid projectId) { if (ProjectGuid == projectId) { return; } ProjectNode referencedProject = new ProjectNode(Solution, projectId); if (VSProject != null) { if (VSProject.Object is VSLangProj.VSProject) { VSLangProj.References references = ((VSLangProj.VSProject)VSProject.Object).References; if (references != null && referencedProject.ExtObject is EnvDTE.Project) { references.AddProject(referencedProject.ExtObject as EnvDTE.Project); } } else if (VSProject.Object is VsWebSite.VSWebSite) { VsWebSite.AssemblyReferences references = ((VsWebSite.VSWebSite)VSProject.Object).References; if (references != null && referencedProject.ExtObject is EnvDTE.Project) { try { references.AddFromProject(referencedProject.ExtObject as EnvDTE.Project); } catch (COMException) { //Web projects throws exceptions if the reference already exists } } } } }
public void ShouldAddProjectReferencestoVSProject() { MockVSHierarchy refProjHier = new MockVSHierarchy("refedproj.proj"); root.AddProject(refProjHier); Project projToRef = refProjHier.ExtObject as Project; Assert.IsNotNull(projToRef); ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); projectNode.AddProjectReference(refProjHier.GUID); Project projectFromMock = ((VSLangProj.VSProject)((MockEnvDTEProject)project.ExtObject).Object).References.Item(0).SourceProject; Assert.AreSame(projToRef, projectFromMock); }
public void AddItemWithNullNameThrows() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); projectNode.AddItem(null); }
public void AddItemWithInvalidNameThrows() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); string itemName = "Invalid<Name>"; projectNode.AddItem(itemName); }
public void TestGetMSBuildItem() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); string itemName = "item1.cs"; Assert.IsNotNull(projectNode.AddItem(itemName)); Assert.IsNotNull(projectNode.GetBuildItem(itemName)); string itemName2 = ".\\item2.cs"; Assert.IsNotNull(projectNode.AddItem(itemName2)); Assert.IsNotNull(projectNode.GetBuildItem(itemName2)); string itemName3 = ".\\FolderForItem3\\item3.cs"; Assert.IsNotNull(projectNode.AddItem(itemName3)); Assert.IsNotNull(projectNode.GetBuildItem(itemName3)); string itemName4 = "FolderForItem4\\item4.cs"; Assert.IsNotNull(projectNode.AddItem(itemName4)); Assert.IsNotNull(projectNode.GetBuildItem(itemName4)); }
public void TestOpenItem() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); string itemName = "item1.cs"; HierarchyNode item = projectNode.AddItem(itemName); IVsWindowFrame wnd = projectNode.OpenItem(item); Assert.IsNotNull(wnd); }
public void TestCreateOrFindFolder() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); Assert.AreSame(projectNode, projectNode.FindOrCreateFolder(".")); Assert.AreSame(projectNode, projectNode.FindSubfolder(".")); Assert.AreSame(projectNode, projectNode.FindSubfolder(".\\.")); Assert.AreSame(projectNode, projectNode.FindSubfolder(".\\.\\")); Assert.AreSame(projectNode, projectNode.FindSubfolder("\\")); Assert.AreSame(projectNode, projectNode.FindSubfolder("\\.")); Assert.AreSame(projectNode, projectNode.FindSubfolder("\\.\\")); Assert.AreSame(projectNode, projectNode.FindSubfolder("\\.\\.")); }
public void TestFindSubFolder() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); string parentFolder = "Folder" + Guid.NewGuid().ToString(); string subFolderName = "subFolder1"; Assert.IsNotNull(projectNode.FindSubfolder("\\" + parentFolder + "\\" + subFolderName + "\\" + subFolderName + "\\")); HierarchyNode parentFolderNode = projectNode.FindByName(parentFolder); Assert.IsNotNull(parentFolderNode); HierarchyNode subFolder1Node = parentFolderNode.FindByName(subFolderName); Assert.IsNotNull(subFolder1Node); HierarchyNode subFolder2Node = subFolder1Node.FindByName(subFolderName); Assert.IsNotNull(subFolder2Node); }
public void TestAddItem() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); string itemName = "item1.cs"; projectNode.AddItem(itemName); string fullItemName = new FileInfo(itemName).FullName; Assert.IsTrue(project.Children.Contains(fullItemName)); }
public void TestCanAddItem() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); string itemName = "item1.cs"; Assert.IsTrue(ProjectNode.CanAddItem(itemName)); string invalidItemName = "<item1>.cs"; Assert.IsFalse(ProjectNode.CanAddItem(invalidItemName)); }
public void TestAcceptsProjectReferenceToItSelf() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); int before = project.Children.Count; projectNode.AddProjectReference(project.GUID); Assert.AreEqual<int>(before,project.Children.Count); }
public void ShouldReturnCodeModelForWebProject() { ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); CreateWebsiteProject(); string language = projectNode.Language; Assert.AreEqual<string>(CodeModelLanguageConstants.vsCMLanguageCSharp, language); }
public void ShouldAddReferenceToWebSiteProject() { string assemblyPath = @"c:\blah\some.dll"; ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); CreateWebsiteProject(); projectNode.AddAssemblyReference(assemblyPath); string pathFromMock = ((VsWebSite.VSWebSite)((MockEnvDTEProject)project.ExtObject).Object).References.Item(0).FullPath; Assert.AreEqual<string>(assemblyPath, pathFromMock); }
public void ShouldAddReferencesToVSProject() { string assemblyPath = @"c:\blah\some.dll"; ProjectNode projectNode = new ProjectNode(vsSolution, project.GUID); projectNode.AddAssemblyReference(assemblyPath); string pathFromMock = ((VSLangProj.VSProject)((MockEnvDTEProject)project.ExtObject).Object).References.Item(0).Path; Assert.AreEqual<string>(assemblyPath, pathFromMock); }
public void RemoveItem() { MockVSHierarchy hierarchy = new MockVSHierarchy(); MockVsSolution solution = new MockVsSolution(hierarchy); MockVSHierarchy project = new MockVSHierarchy("Project1.project"); hierarchy.AddProject(project); ProjectNode projectNode = new ProjectNode(solution, project.GUID); string itemName = "item1"; HierarchyNode node = projectNode.AddItem(itemName); Assert.IsNotNull(projectNode.FindByName(itemName)); node.Remove(); Assert.IsNull(projectNode.FindByName(itemName)); }