예제 #1
0
		void CreateProjectItems()
		{
			project = new TestableDTEProject();
			msbuildProject = project.TestableProject;
			projectItems = project.ProjectItems;
			fakeFileService = project.FakeFileService;
		}
예제 #2
0
		void CreateProjectItemsFromProjectSubFolder(string projectFileName, string folderName)
		{
			CreateProjectItems();
			msbuildProject.FileName = projectFileName;
			msbuildProject.AddDirectory(folderName);
			projectItems = project.ProjectItems.Item(folderName).ProjectItems;
		}
예제 #3
0
		void CreateProjectItems(string fileName = @"d:\projects\MyProject\MyProject.csproj")
		{
			project = new TestableDTEProject();
			msbuildProject = project.TestableProject;
			msbuildProject.FileName = new FileName(fileName);
			projectItems = (ProjectItems)project.ProjectItems;
			fakeFileService = project.FakeFileService;
		}
예제 #4
0
		public Project(
			MSBuildBasedProject project,
			IPackageManagementProjectService projectService,
			IPackageManagementFileService fileService)
		{
			this.MSBuildProject = project;
			this.projectService = projectService;
			this.fileService = fileService;
			
			CreateProperties();
			Object = new ProjectObject(this);
			ProjectItems = new ProjectItems(this, fileService);
		}
		public Project (
			DotNetProject project,
			IExtendedPackageManagementProjectService projectService,
			IPackageManagementFileService fileService)
		{
			this.DotNetProject = project;
			this.projectService = projectService;
			this.fileService = fileService;
			
			CreateProperties ();
			Object = new ProjectObject (this);
			ProjectItems = new ProjectItems (this, this, fileService);
		}
예제 #6
0
        public Project(
			MSBuildBasedProject project,
			IPackageManagementProjectService projectService,
			IPackageManagementFileService fileService)
        {
            this.MSBuildProject = project;
            this.projectService = projectService;
            this.fileService = fileService;

            context = new CodeModelContext {
                CurrentProject = project,
                DteProject = this
            };

            CreateProperties();
            Object = new ProjectObject(this);
            ProjectItems = new ProjectItems(this, this);
        }
예제 #7
0
		List<DTE.ProjectItem> GetAllChildItems(ProjectItems projectItems)
		{
			return projectItems.OfType<DTE.ProjectItem>().ToList();
		}
예제 #8
0
		DTE.ProjectItem GetFirstChildItem(ProjectItems projectItems)
		{
			return projectItems.OfType<DTE.ProjectItem>().FirstOrDefault();
		}
예제 #9
0
		DTE.ProjectItem GetChildItem(ProjectItems projectItems, string name)
		{
			return projectItems
				.OfType<DTE.ProjectItem>()
				.SingleOrDefault(item => item.Name == name);
		}
예제 #10
0
        public void AddFromFile_AddFromFileFromProjectItemsBelongingToFile_FileIsAddedAsDependentFile()
        {
            CreateProjectItems(@"d:\projects\myproject\myproject.csproj");
            msbuildProject.AddFile("MainForm.cs");
            string fileName = @"d:\projects\myproject\MainForm.Designer.cs";
            msbuildProject.ItemTypeToReturnFromGetDefaultItemType = ItemType.Page;
            projectItems = (ProjectItems)project.ProjectItems.Item("MainForm.cs").ProjectItems;

            projectItems.AddFromFile(fileName);

            FileProjectItem fileItem = msbuildProject.FindFile(new FileName(fileName));

            Assert.AreEqual("MainForm.Designer.cs", fileItem.Include);
            Assert.AreEqual(fileName, fileItem.FileName.ToString());
            Assert.AreEqual(ItemType.Page, fileItem.ItemType);
            Assert.AreEqual(msbuildProject, fileItem.Project);
            Assert.AreEqual("MainForm.cs", fileItem.DependentUpon);
        }