public void SafeDeleteFile_NoPermissions_ShouldHandleException() { var testScenarioName = "NoPermissions"; var directoryToCreate = $"{_testFolder}\\{testScenarioName}"; var fileToDelete = $"{directoryToCreate}\\{testScenarioName}.csproj"; try { FSTestsFixture.CreateFolders(_testFolder, new List <string>() { testScenarioName }); FSTestsFixture.CreateFiles(_testFolder, new List <string>() { $"{testScenarioName}\\{testScenarioName}.csproj" }, true); _logDate = DateTime.Now; Fs.SafeDeleteFile(fileToDelete); Assert.True(_fixture.IsErrorMessageInLogFile(_logDate, ErrorLevel, ErrorMessage)); } finally { _ = new FileInfo(fileToDelete) { IsReadOnly = false, }; } }
public void SafeMoveFile_DestFileExists_Overwrite_NoPermissions_NoWarnOnFailure_ShouldNotLogException() { var testScenarioName = "DestFileExists_Overwrite_NoPermissions_NoWarnOnFailure"; var originalFile = $"{_testFolder}\\{testScenarioName}_Original.cs"; var movedFile = $"{_testFolder}\\{testScenarioName}_Moved.cs"; FSTestsFixture.CreateFiles(_testFolder, new List <string> { Path.GetFileName(originalFile), Path.GetFileName(movedFile) }, true); try { _logDate = DateTime.Now; Fs.SafeMoveFile(originalFile, movedFile, true, false); Assert.False(_fixture.IsErrorMessageInLogFile(_logDate, ErrorLevel, $"{Path.GetFileName(movedFile)} {ErrorMessage}")); } finally { _ = new FileInfo(movedFile) { IsReadOnly = false, }; } }
public void EnsureFileEditable_FileIsNotReadOnly_ShouldNotModifyIsReadOnly() { var testScenarioName = "FileIsNotReadOnly"; string filePath = $"{_testFolder}\\{testScenarioName}"; FSTestsFixture.CreateFiles(_testFolder, new List <string> { testScenarioName }); var originalFileInfo = new FileInfo(filePath); Fs.EnsureFileEditable(filePath); var newFileInfo = new FileInfo(filePath); Assert.False(originalFileInfo.IsReadOnly); Assert.False(newFileInfo.IsReadOnly); }
public void EnsureFolderExists_ErrorCreatingDirectory_ShouldLogException() { // To force an error creating a Directory // we create a file with the name of the folder that we want to create var testScenarioName = "ErrorCreatingDirectory"; var wrongDirectoryToCreate = $"{testScenarioName}\\{testScenarioName}.cs"; FSTestsFixture.CreateFolders(_testFolder, new List <string> { testScenarioName }); FSTestsFixture.CreateFiles(_testFolder, new List <string> { wrongDirectoryToCreate }); _logDate = DateTime.Now; Fs.EnsureFolderExists($"{_testFolder}\\{wrongDirectoryToCreate}"); Assert.True(_fixture.IsErrorMessageInLogFile(_logDate, ErrorLevel, ErrorMessage)); }
public void SafeRenameDirectory_WrongDestinationFolder_ShouldLogException() { // to throw the exception we create a file with the same name we try to create the new directory var testScenarioName = "WrongDestinationFolder"; var originalDirectory = $"{_testFolder}\\{testScenarioName}_Original"; var wrongDirectory = $"{_testFolder}\\{testScenarioName}_WrongFolder.cs"; FSTestsFixture.CreateFolders(_testFolder, new List <string> { $"{testScenarioName}_Original", $"{testScenarioName}_Renamed" }); FSTestsFixture.CreateFiles(_testFolder, new List <string> { $"{testScenarioName}_WrongFolder.cs" }); _logDate = DateTime.Now; Fs.SafeRenameDirectory(originalDirectory, wrongDirectory); Assert.True(_fixture.IsErrorMessageInLogFile(_logDate, ErrorLevel, $"{testScenarioName}_Original {ErrorMessage}")); }
public void SafeMoveFile_DestFileExists_NoOverwrite_JustReturns() { var testScenarioName = "DestFileExists_NoOverwrite"; var originalFile = $"{_testFolder}\\{testScenarioName}_Original.cs"; var movedFile = $"{_testFolder}\\{testScenarioName}_Moved.cs"; FSTestsFixture.CreateFiles(_testFolder, new List <string> { Path.GetFileName(originalFile), Path.GetFileName(movedFile) }); var originFolderTotalFiles = Directory.GetFiles(_testFolder).Length; Fs.SafeMoveFile(originalFile, movedFile, false); var destinationFolderTotalFiles = Directory.GetFiles(_testFolder).Length; Assert.True(originFolderTotalFiles == destinationFolderTotalFiles); Assert.True(File.Exists(originalFile)); Assert.True(File.Exists(movedFile)); }
public void SafeMoveFile_ValidData_ShouldMove() { var testScenarioName = "ValidData"; var originalFile = $"{_testFolder}\\{testScenarioName}_Original.cs"; var movedFile = $"{_testFolder}\\{testScenarioName}_Moved.cs"; FSTestsFixture.CreateFiles(_testFolder, new List <string> { Path.GetFileName(originalFile) }); var originFolderTotalFiles = Directory.GetFiles(_testFolder).Length; Fs.SafeMoveFile(originalFile, movedFile); var destinationFolderTotalFiles = Directory.GetFiles(_testFolder).Length; Assert.True(originFolderTotalFiles == destinationFolderTotalFiles); Assert.False(File.Exists(originalFile)); Assert.True(File.Exists(movedFile)); }
public void SafeDeleteFile_ExistingFile_ShouldHaveDeletedFile() { var testScenarioName = "ExistingFile"; var directoryToCreate = $"{_testFolder}\\{testScenarioName}"; var fileToDelete = $"{directoryToCreate}\\{testScenarioName}.csproj"; FSTestsFixture.CreateFolders(_testFolder, new List <string>() { testScenarioName }); FSTestsFixture.CreateFiles(_testFolder, new List <string>() { $"{testScenarioName}\\{testScenarioName}.csproj" }); var fileExistsBefore = File.Exists(fileToDelete); Fs.SafeDeleteFile(fileToDelete); Assert.True(fileExistsBefore); Assert.False(File.Exists(fileToDelete)); }
public void EnsureFileEditable_FileIsReadOnly_ShouldChangeToReadOnly() { var testScenarioName = "FileIsReadOnly"; var fileToEdit = $"{_testFolder}\\{testScenarioName}"; try { FSTestsFixture.CreateFiles(_testFolder, new List <string> { testScenarioName }, true); Fs.EnsureFileEditable(fileToEdit); var newFileInfo = new FileInfo(fileToEdit); Assert.False(newFileInfo.IsReadOnly); } finally { _ = new FileInfo(fileToEdit) { IsReadOnly = false, }; } }