public void TestAssertEqualWhenEqual() { if (Directory.Exists(EqualDir)) { Directory.Delete(EqualDir, true); } Assert.IsFalse(Directory.Exists(EqualDir)); DirectoryExt.CopyContents(ReferenceDir, EqualDir); AssertDirectory.AreEqual(ReferenceDir, EqualDir, true); }
public void TestAssertEqualWhenDirectoryMissing() { if (Directory.Exists(MissingDirectoryDir)) { Directory.Delete(MissingDirectoryDir, true); } Assert.IsFalse(Directory.Exists(MissingDirectoryDir)); DirectoryExt.CopyContents(ReferenceDir, MissingDirectoryDir); var dirToDelete = Path.Combine(MissingDirectoryDir, "SubDir2"); Directory.Delete(dirToDelete, true); Assert.Throws <AssertionException>(() => AssertDirectory.AreEqual(ReferenceDir, MissingDirectoryDir, true)); }
public void TestAssertEqualsWhenFileMissing() { if (Directory.Exists(MissingFileDir)) { Directory.Delete(MissingFileDir, true); } Assert.IsFalse(Directory.Exists(MissingFileDir)); DirectoryExt.CopyContents(ReferenceDir, MissingFileDir); var fileToDelete = Path.Combine(MissingFileDir, "SubDir1", "nunit.core.interfaces.dll"); File.Delete(fileToDelete); Assert.Throws <AssertionException>(() => AssertDirectory.AreEqual(ReferenceDir, MissingFileDir, true)); }
public void TestDirectoryIsCreatedIfMissing() { const string newDirName = "NewLogDir"; if (Directory.Exists(newDirName)) { Directory.Delete(newDirName, true); } // Disable as we need to create the instance to see the directory created but don't need it after that // ReSharper disable once UnusedVariable var fileLogger = new FileLogger("testLogger", newDirName); AssertDirectory.Exists(newDirName); }
public void TestAssertEqualWhenAdditionalFile() { if (Directory.Exists(AdditionalFileDir)) { Directory.Delete(AdditionalFileDir, true); } Assert.IsFalse(Directory.Exists(AdditionalFileDir)); DirectoryExt.CopyContents(ReferenceDir, AdditionalFileDir); var fileToCopy = Path.Combine(AdditionalFileDir, "AssemblyInfo.txt"); var newFilename = Path.Combine(AdditionalFileDir, "NewFile.txt"); File.Copy(fileToCopy, newFilename); Assert.Throws <AssertionException>(() => AssertDirectory.AreEqual(ReferenceDir, AdditionalFileDir, true)); }
public void TestAssertEqualWhenMismatchedFile() { if (Directory.Exists(MismatchedFileDir)) { Directory.Delete(MismatchedFileDir, true); } Assert.IsFalse(Directory.Exists(MismatchedFileDir)); DirectoryExt.CopyContents(ReferenceDir, MismatchedFileDir); var filenameToModify = Path.Combine(MismatchedFileDir, "AssemblyInfo.txt"); var contents = File.ReadAllText(filenameToModify); contents = contents + Environment.NewLine + "HELLO" + Environment.NewLine + contents; File.Delete(filenameToModify); File.WriteAllText(filenameToModify, contents); Assert.Throws <AssertionException>(() => AssertDirectory.AreEqual(ReferenceDir, MismatchedFileDir, true)); }
public void TestOldFilesAreCleanedUp() { const string newDirName = "CleanUpLogDir"; if (Directory.Exists(newDirName)) { Directory.Delete(newDirName, true); } Directory.CreateDirectory(newDirName); AssertDirectory.Exists(newDirName); var retentionPeriod = new TimeSpan(7, 0, 0, 0); var loggerDate = DateTime.Now; var firstOldFile = string.Format("{0}-0.log.txt", loggerDate.ToString("yyyy-MM-dd HH-mm")); var firstOldFilePath = Path.Combine(newDirName, firstOldFile); var fileStream = File.Create(firstOldFilePath); fileStream.Close(); var fileInfo = new FileInfo(firstOldFilePath); fileInfo.LastWriteTime = loggerDate.Subtract(retentionPeriod).Subtract(new TimeSpan(0, 0, 0, 1)); // one second older than cutoff var secondOldFile = string.Format("{0}-1.log.txt", loggerDate.ToString("yyyy-MM-dd HH-mm")); var secondOldFilePath = Path.Combine(newDirName, secondOldFile); fileStream = File.Create(secondOldFilePath); fileStream.Close(); fileInfo = new FileInfo(secondOldFilePath); fileInfo.LastWriteTime = loggerDate.Subtract(retentionPeriod).Add(new TimeSpan(0, 0, 0, 1)); // one second newer than cutoff var fileLogger = new FileLogger("testLogger", newDirName); fileLogger.TimeProvider = new FixedTimeProvider(loggerDate); fileLogger.RetentionPeriod = retentionPeriod; fileLogger.Open(); fileLogger.Dispose(); // Check the first one is gone and the second one is still there AssertFile.DoesNotExist(firstOldFilePath); AssertFile.Exists(secondOldFilePath); }