public void ShouldFilterAddedDirectoryOnSource() { MockProject sourceProject = new MockProject(@"c:\mockPath1\project1.csproj"); MockProject targetProject = new MockProject(); MockProjectItemsFilter mockProjectItemsFilter = new MockProjectItemsFilter { IsSynchronizableReturnValue = false }; ProjectItemsSynchronizer syncher = new ProjectItemsSynchronizer(sourceProject, targetProject, new MockLogger(), null, null, mockProjectItemsFilter); string directoryToAdd = Path.Combine(@"c:\mockPath1", "MyFolder"); syncher.DirectoryAddedToSource(directoryToAdd); Assert.IsFalse(targetProject.ProjectItems.AddFolderCalled); Assert.IsTrue(mockProjectItemsFilter.IsSynchronizableCalled); }
public void ShouldFilterAddedFileOnSource() { string fileToAdd = Path.Combine(@"c:\mockPath1", @"ABC.xaml"); MockProject sourceProject = new MockProject(@"c:\mockPath1\project1.csproj"); sourceProject.ProjectItems.AddProjectItem(new MockProjectItem("ABC.xaml")); MockProject targetProject = new MockProject(); MockProjectItemsFilter mockProjectItemsFilter = new MockProjectItemsFilter { IsSynchronizableReturnValue = false }; ProjectItemsSynchronizer syncher = new ProjectItemsSynchronizer(sourceProject, targetProject, new MockLogger(), null, null, mockProjectItemsFilter); Assert.IsFalse(mockProjectItemsFilter.IsSynchronizableCalled); syncher.FileAddedToSource(fileToAdd); Assert.IsFalse(targetProject.ProjectItems.AddFromFileCalled); Assert.IsTrue(mockProjectItemsFilter.IsSynchronizableCalled); }
public void ShouldUseRelativePathWhenEvaluatingFilter() { MockProject sourceProject = new MockProject(@"c:\mockPath1\project1.csproj"); MockProject targetProject = new MockProject(); MockLogger mockLogger = new MockLogger(); MockProjectItemsFilter mockFilter = new MockProjectItemsFilter(); MockProjectItem sourceFolder = new MockProjectItem("MyFolder") { Kind = Constants.vsProjectItemKindPhysicalFolder }; sourceProject.ProjectItems.AddProjectItem(sourceFolder); sourceFolder.ProjectItems.AddProjectItem(new MockProjectItem("ABC.txt")); ProjectItemsSynchronizer syncher = new ProjectItemsSynchronizer(sourceProject, targetProject, mockLogger, null, mockFilter); string fileToAdd = @"c:\mockPath1\MyFolder\ABC.txt"; syncher.FileAddedToSource(fileToAdd); Assert.IsTrue(mockFilter.IsSynchronizableCalled); Assert.AreEqual(@"MyFolder\ABC.txt", mockFilter.IsSynchronizableArgument); }
public void ShouldUseRelativePathWhenEvaluatingFilter() { var sourceProject = new MockProject(@"c:\mockPath1\project1.csproj"); var targetProject = new MockProject(); var mockLogger = new MockLogger(); var mockFilter = new MockProjectItemsFilter(); var sourceFolder = new MockProjectItem("MyFolder") { Kind = Constants.vsProjectItemKindPhysicalFolder }; sourceProject.ProjectItems.AddProjectItem(sourceFolder); sourceFolder.ProjectItems.AddProjectItem(new MockProjectItem("ABC.txt")); var syncher = new ProjectItemsSynchronizer(sourceProject, targetProject, mockLogger, null, mockFilter); string fileToAdd = @"c:\mockPath1\MyFolder\ABC.txt"; syncher.FileAddedToSource(fileToAdd); Assert.IsTrue(mockFilter.IsSynchronizableCalled); Assert.AreEqual(@"MyFolder\ABC.txt", mockFilter.IsSynchronizableArgument); }
public void ShouldFilterAddedFileOnSource() { string fileToAdd = Path.Combine(@"c:\mockPath1", @"ABC.xaml"); var sourceProject = new MockProject(@"c:\mockPath1\project1.csproj"); sourceProject.ProjectItems.AddProjectItem(new MockProjectItem("ABC.xaml")); var targetProject = new MockProject(); var mockProjectItemsFilter = new MockProjectItemsFilter(); mockProjectItemsFilter.IsSynchronizableReturnValue = false; var syncher = new ProjectItemsSynchronizer(sourceProject, targetProject, new MockLogger(), null, null, mockProjectItemsFilter); Assert.IsFalse(mockProjectItemsFilter.IsSynchronizableCalled); syncher.FileAddedToSource(fileToAdd); Assert.IsFalse(targetProject.ProjectItems.AddFromFileCalled); Assert.IsTrue(mockProjectItemsFilter.IsSynchronizableCalled); }
public void ShouldFilterAddedDirectoryOnSource() { var sourceProject = new MockProject(@"c:\mockPath1\project1.csproj"); var targetProject = new MockProject(); var mockProjectItemsFilter = new MockProjectItemsFilter(); mockProjectItemsFilter.IsSynchronizableReturnValue = false; var syncher = new ProjectItemsSynchronizer(sourceProject, targetProject, new MockLogger(), null, null, mockProjectItemsFilter); string directoryToAdd = Path.Combine(@"c:\mockPath1", "MyFolder"); syncher.DirectoryAddedToSource(directoryToAdd); Assert.IsFalse(targetProject.ProjectItems.AddFolderCalled); Assert.IsTrue(mockProjectItemsFilter.IsSynchronizableCalled); }