public void FailEnumerateAbsentDirectory() { string path = GetFullPath(@"DoesNotExist"); var names = new List <string>(); EnumerateDirectoryResult result = FileUtilities.EnumerateDirectoryEntries(path, (name, attr) => names.Add(name)); XAssert.IsFalse(result.Succeeded); XAssert.AreEqual(EnumerateDirectoryStatus.SearchDirectoryNotFound, result.Status); XAssert.AreEqual(0, names.Count); }
public void FailEnumerateFile() { string path = GetFullPath(@"NotADirectory"); WriteFile(@"NotADirectory", string.Empty); var names = new List <string>(); EnumerateDirectoryResult result = FileUtilities.EnumerateDirectoryEntries(path, (name, attr) => names.Add(name)); XAssert.IsFalse(result.Succeeded); XAssert.AreEqual(EnumerateDirectoryStatus.CannotEnumerateFile, result.Status); XAssert.AreEqual(0, names.Count); }
public void EnumerateEmptyDirectoryNames() { string path = Path.Combine(TemporaryDirectory, "emptyDir"); Directory.CreateDirectory(path); var names = new List <string>(); EnumerateDirectoryResult result = FileUtilities.EnumerateDirectoryEntries(path, (name, attr) => names.Add(name)); XAssert.IsTrue(result.Succeeded); XAssert.AreEqual(EnumerateDirectoryStatus.Success, result.Status); XAssert.AreEqual(0, names.Count); }
public void EnumerateNonEmptyDirectory() { string path = Path.Combine(TemporaryDirectory, "dir"); Directory.CreateDirectory(path); WriteFile(PathGeneratorUtilities.GetRelativePath("dir", "fileA"), string.Empty); Directory.CreateDirectory(GetFullPath(PathGeneratorUtilities.GetRelativePath("dir", "dirB"))); var names = new List <string>(); EnumerateDirectoryResult result = FileUtilities.EnumerateDirectoryEntries(path, (name, attr) => names.Add(name)); XAssert.IsTrue(result.Succeeded); XAssert.AreEqual(EnumerateDirectoryStatus.Success, result.Status); Assert.Contains("fileA", names, StringComparer.Ordinal); Assert.Contains("dirB", names, StringComparer.Ordinal); Assert.Equal(2, names.Count); }
public void EnumerationIndicatesDirectories() { string path = Path.Combine(TemporaryDirectory, "dir"); Directory.CreateDirectory(path); Directory.CreateDirectory(GetFullPath(PathGeneratorUtilities.GetRelativePath("dir", "childDir"))); Directory.CreateDirectory(GetFullPath(PathGeneratorUtilities.GetRelativePath("dir", "childDir2"))); var names = new List <string>(); EnumerateDirectoryResult result = FileUtilities.EnumerateDirectoryEntries( path, (name, attr) => { XAssert.IsTrue((attr & FileAttributes.Directory) != 0, "All children are directories."); names.Add(name); }); XAssert.IsTrue(result.Succeeded); XAssert.AreEqual(EnumerateDirectoryStatus.Success, result.Status); Assert.Equal(new[] { "childDir", "childDir2" }, names); }