public GetDirectories ( string path ) : IEnumerable |
||
path | string | |
Résultat | IEnumerable |
public IEnumerable<string> GetDirectories(string path)
{
if (path != string.Empty && path[path.Length-1] != Path.DirectorySeparatorChar)
path = path + Path.DirectorySeparatorChar;
var rootPaths = from file in Files
where file.StartsWith(path, StringComparison.InvariantCultureIgnoreCase)
select Path.GetDirectoryName(file.Substring(path.Length));
return rootPaths.Distinct();
}
public void ShouldGetDirectoriesAtRootLevel() { var fileSystem = new FakeFileSystem(@"C:\temp\repo"); fileSystem.Files.Add("Matt\\file1.txt"); fileSystem.Files.Add("Matt\\file2.txt"); fileSystem.Files.Add("Matt\\file3.txt"); fileSystem.Files.Add("Matt2\\file3.txt"); var directories = fileSystem.GetDirectories(string.Empty).ToList(); Assert.Equal(2, directories.Count); Assert.Equal(new[] { "Matt", "Matt2" }, directories.ToArray()); }