public override DirectoryInfoBase CreateDirectory(string path, DirectorySecurity directorySecurity) { if (path == null) { throw new ArgumentNullException("path"); } if (path.Length == 0) { throw new ArgumentException(Properties.Resources.PATH_CANNOT_BE_THE_EMPTY_STRING_OR_ALL_WHITESPACE, "path"); } if (mockFileDataAccessor.FileExists(path)) { var message = string.Format(CultureInfo.InvariantCulture, @"Cannot create ""{0}"" because a file or directory with the same name already exists.", path); var ex = new IOException(message); ex.Data.Add("Path", path); throw ex; } path = EnsurePathEndsWithDirectorySeparator(mockFileDataAccessor.Path.GetFullPath(path)); if (!Exists(path)) { mockFileDataAccessor.AddDirectory(path); } var created = new MockDirectoryInfo(mockFileDataAccessor, path); return(created); }
private IDirectoryInfo CreateDirectoryInternal(string path, DirectorySecurity directorySecurity) { if (path == null) { throw new ArgumentNullException(nameof(path)); } if (path.Length == 0) { throw new ArgumentException(StringResources.Manager.GetString("PATH_CANNOT_BE_THE_EMPTY_STRING_OR_ALL_WHITESPACE"), "path"); } path = mockFileDataAccessor.Path.GetFullPath(path).TrimSlashes(); if (!Exists(path)) { mockFileDataAccessor.AddDirectory(path); } var created = new MockDirectoryInfo(mockFileDataAccessor, path); if (directorySecurity != null) { created.SetAccessControl(directorySecurity); } return(created); }
public override DirectoryInfoBase CreateDirectory(string path, DirectorySecurity directorySecurity) { if (path == null) { throw new ArgumentNullException("path"); } if (path.Length == 0) { throw new ArgumentException("Path cannot be the empty string or all whitespace.", "path"); } if (mockFileDataAccessor.FileExists(path)) { var message = string.Format(CultureInfo.InvariantCulture, @"Cannot create ""{0}"" because a file or directory with the same name already exists.", path); var ex = new IOException(message); ex.Data.Add("Path", path); throw ex; } path = EnsurePathEndsWithDirectorySeparator(mockFileDataAccessor.Path.GetFullPath(path)); if (!Exists(path)) { mockFileDataAccessor.AddDirectory(path); } var created = new MockDirectoryInfo(mockFileDataAccessor, path); return(created); }
private DirectoryInfoBase CreateDirectoryInternal(string path #if NET40 , DirectorySecurity directorySecurity #endif ) { if (path == null) { throw new ArgumentNullException("path"); } if (path.Length == 0) { throw new ArgumentException(StringResources.Manager.GetString("PATH_CANNOT_BE_THE_EMPTY_STRING_OR_ALL_WHITESPACE"), "path"); } path = EnsurePathEndsWithDirectorySeparator(mockFileDataAccessor.Path.GetFullPath(path)); if (!Exists(path)) { mockFileDataAccessor.AddDirectory(path); } var created = new MockDirectoryInfo(mockFileDataAccessor, path); #if NET40 created.SetAccessControl(directorySecurity); #endif return(created); }
public override DirectoryInfoBase CreateDirectory(string path, DirectorySecurity directorySecurity) { path = EnsurePathEndsWithDirectorySeparator(mockFileDataAccessor.Path.GetFullPath(path)); if (!Exists(path)) { mockFileDataAccessor.AddDirectory(path); } var created = new MockDirectoryInfo(mockFileDataAccessor, path); var parent = GetParent(path); if (parent != null) { CreateDirectory(GetParent(path).FullName, directorySecurity); } return(created); }
public override DirectoryInfoBase CreateDirectory(string path) { if (path == null) { throw new ArgumentNullException("path"); } if (path.Length == 0) { throw new ArgumentException("PATH_CANNOT_BE_THE_EMPTY_STRING_OR_ALL_WHITESPACE", "path"); } path = EnsurePathEndsWithDirectorySeparator(mockFileDataAccessor.Path.GetFullPath(path)); if (!Exists(path)) { mockFileDataAccessor.AddDirectory(path); } var created = new MockDirectoryInfo(mockFileDataAccessor, path); return(created); }
private IDirectoryInfo CreateDirectoryInternal(string path, DirectorySecurity directorySecurity) { if (path == null) { throw new ArgumentNullException(nameof(path)); } if (path.Length == 0) { throw new ArgumentException(StringResources.Manager.GetString("PATH_CANNOT_BE_THE_EMPTY_STRING_OR_ALL_WHITESPACE"), "path"); } if (mockFileDataAccessor.PathVerifier.HasIllegalCharacters(path, true)) { throw CommonExceptions.IllegalCharactersInPath(nameof(path)); } path = mockFileDataAccessor.Path.GetFullPath(path).TrimSlashes(); if (XFS.IsWindowsPlatform()) { path = path.TrimEnd(' '); } if (!Exists(path)) { mockFileDataAccessor.AddDirectory(path); } var created = new MockDirectoryInfo(mockFileDataAccessor, path); if (directorySecurity != null) { created.SetAccessControl(directorySecurity); } return(created); }