public void GetModifications_EmptyLocal() { tempRoot.CreateDirectory(); tempSubRoot.CreateDirectory(); string file1 = tempRoot.CreateTextFile("file1.txt", "foo").ToString(); string file2 = tempRoot.CreateTextFile("file2.txt", "bar").ToString(); string file3 = tempSubRoot.CreateTextFile("file3.txt", "bat").ToString(); Modification[] mods = sc.GetModifications(IntegrationResult(DateTime.MinValue), IntegrationResult(DateTime.MaxValue)); Assert.AreEqual(4, mods.Length); Assert.AreEqual("file1.txt", mods[0].FileName); Assert.AreEqual("file2.txt", mods[1].FileName); Assert.AreEqual(Path.GetFileName(tempSubRoot.ToString()), mods[2].FileName); Assert.AreEqual("file3.txt", mods[3].FileName); Assert.AreEqual(Path.GetDirectoryName(file1), mods[0].FolderName); Assert.AreEqual(Path.GetDirectoryName(file2), mods[1].FolderName); Assert.AreEqual(Path.GetFileName(tempSubRoot.ToString()), mods[2].FolderName); Assert.AreEqual(Path.GetDirectoryName(file3), mods[3].FolderName); Assert.AreEqual(new FileInfo(file1).LastWriteTime, mods[0].ModifiedTime); Assert.AreEqual(new FileInfo(file2).LastWriteTime, mods[1].ModifiedTime); Assert.AreEqual(new FileInfo(tempSubRoot.ToString()).LastWriteTime, mods[2].ModifiedTime); Assert.AreEqual(new FileInfo(file3).LastWriteTime, mods[3].ModifiedTime); mods = sc.GetModifications(IntegrationResult(DateTime.Now.AddHours(1)), IntegrationResult(DateTime.MaxValue)); Assert.AreEqual(0, mods.Length); }
public void GetModifications_EmptyLocal() { tempRoot.CreateDirectory(); tempSubRoot.CreateDirectory(); string file1 = tempRoot.CreateTextFile("file1.txt", "foo").ToString(); string file2 = tempRoot.CreateTextFile("file2.txt", "bar").ToString(); string file3 = tempSubRoot.CreateTextFile("file3.txt", "bat").ToString(); Modification[] mods = sc.GetModifications(IntegrationResult(DateTime.MinValue), IntegrationResult(DateTime.MaxValue)); using (new AssertionScope()) { mods.Length.Should().Be(4); mods[0].FileName.Should().Be("file1.txt"); mods[1].FileName.Should().Be("file2.txt"); mods[2].FileName.Should().Be(Path.GetFileName(tempSubRoot.ToString())); mods[3].FileName.Should().Be("file3.txt"); mods[0].FolderName.Should().Be(Path.GetDirectoryName(file1)); mods[1].FolderName.Should().Be(Path.GetDirectoryName(file2)); mods[2].FolderName.Should().Be(Path.GetFileName(tempSubRoot.ToString())); mods[3].FolderName.Should().Be(Path.GetDirectoryName(file3)); new FileInfo(file1).LastWriteTime.Should().BeCloseTo(mods[0].ModifiedTime, 100); new FileInfo(file2).LastWriteTime.Should().BeCloseTo(mods[1].ModifiedTime, 100); new FileInfo(tempSubRoot.ToString()).LastWriteTime.Should().BeCloseTo(mods[2].ModifiedTime, 100); new FileInfo(file3).LastWriteTime.Should().BeCloseTo(mods[3].ModifiedTime, 100); } mods = sc.GetModifications(IntegrationResult(DateTime.Now.AddHours(1)), IntegrationResult(DateTime.MaxValue)); mods.Length.Should().Be(0); }
public void LoadStatistics() { testDir.CreateDirectory().CreateTextFile(StatisticsPublisher.XmlFileName, "<statistics />"); XmlDocument statisticsDoc = new XmlDocument(); statisticsDoc.LoadXml(StatisticsPublisher.LoadStatistics(testDir.ToString())); XPathNavigator navigator = statisticsDoc.CreateNavigator(); XPathNodeIterator nodeIterator = navigator.Select("//timestamp/@day"); nodeIterator.MoveNext(); int day = Convert.ToInt32(nodeIterator.Current.Value); Assert.AreEqual(DateTime.Now.Day, day); nodeIterator = navigator.Select("//timestamp/@month"); nodeIterator.MoveNext(); string month = nodeIterator.Current.Value; Assert.AreEqual(DateTime.Now.ToString("MMM"), month); nodeIterator = navigator.Select("//timestamp/@year"); nodeIterator.MoveNext(); int year = Convert.ToInt32(nodeIterator.Current.Value); Assert.AreEqual(DateTime.Now.Year, year); }
public void GetModifications_EmptyLocal() { tempRoot.CreateDirectory(); tempSubRoot.CreateDirectory(); string file1 = tempRoot.CreateTextFile("file1.txt", "foo").ToString(); string file2 = tempRoot.CreateTextFile("file2.txt", "bar").ToString(); string file3 = tempSubRoot.CreateTextFile("file3.txt", "bat").ToString(); Modification[] mods = sc.GetModifications(IntegrationResult(DateTime.MinValue), IntegrationResult(DateTime.MaxValue)); Array.Sort( mods, (left, right) => { int result = left.FolderName.CompareTo(right.FolderName); if (result == 0) { result = left.FileName.CompareTo(right.FileName); } return(result); } ); using (new AssertionScope()) { mods.Length.Should().Be(4); mods[0].FileName.Should().Be("file1.txt", "FileName[0]"); mods[1].FileName.Should().Be("file2.txt", "FileName[1]"); mods[2].FileName.Should().Be("file3.txt", "FileName[2]"); mods[3].FileName.Should().Be(Path.GetFileName(tempSubRoot.ToString()), "FileName[3]"); mods[0].FolderName.Should().Be(Path.GetDirectoryName(file1), "FolderName[0]"); mods[1].FolderName.Should().Be(Path.GetDirectoryName(file2), "FolderName[1]"); mods[2].FolderName.Should().Be(Path.GetDirectoryName(file3), "FolderName[2]"); mods[3].FolderName.Should().Be(Path.GetFileName(tempSubRoot.ToString()), "FolderName[3]"); new FileInfo(file1).LastWriteTime.Should().BeCloseTo(mods[0].ModifiedTime, 100, "LastWriteTime[0]"); new FileInfo(file2).LastWriteTime.Should().BeCloseTo(mods[1].ModifiedTime, 100, "LastWriteTime[1]"); new FileInfo(file3).LastWriteTime.Should().BeCloseTo(mods[2].ModifiedTime, 100, "LastWriteTime[2]"); new FileInfo(tempSubRoot.ToString()).LastWriteTime.Should().BeCloseTo(mods[3].ModifiedTime, 100, "LastWriteTime[3]"); } mods = sc.GetModifications(IntegrationResult(DateTime.Now.AddHours(1)), IntegrationResult(DateTime.MaxValue)); mods.Length.Should().Be(0); }
public void OverwriteReadOnlyFileAtDestination() { srcRoot.CreateDirectory().CreateTextFile(fileName, fileContents); pubRoot.CreateDirectory(); FileInfo readOnlyDestFile = new FileInfo(pubRoot.CreateEmptyFile(fileName).ToString()); readOnlyDestFile.Attributes = FileAttributes.ReadOnly; publisher.UseLabelSubDirectory = false; publisher.Run(result); }
public void DeleteFilesAtPublishFolderWhenCleanPublishDirPriorToCopyIsTrue() { SystemPath rootFile = srcRoot.CreateDirectory().CreateTextFile(fileName, fileContents); publisher.UseLabelSubDirectory = false; publisher.Run(result); Assert.IsTrue(pubRoot.Combine(fileName).Exists(), "File not found in publish folder"); // simulate deletion of a file rootFile.DeleteFile(); Assert.IsFalse(srcRoot.Combine(fileName).Exists(), "File found in root folder"); // publish again publisher.CleanPublishDirPriorToCopy = true; publisher.Run(result); Assert.IsFalse(pubRoot.Combine(fileName).Exists(), "File found in publish folder"); }