public void TempFolderFailsOnNullFileSystemTest() { const IFileSystem nullFileSystem = null; var exception = Assert.Throws <ArgumentNullException> ( () => { TempFolder.CleanFolder(nullFileSystem, AppKey); } ); Assert.AreEqual(@"fileSystem", exception.ParamName); }
public void TempFolderCleansNonexistentFolderTest() { var fileSystem = MockRepository.GenerateStrictMock <IFileSystem>(); var tempFolder = Path.GetTempPath(); var appTempFolder = Path.Combine(tempFolder, AppKey); fileSystem.Stub(f => f.GetTempPath()).Return(tempFolder); fileSystem.Stub(f => f.DirectoryExists(appTempFolder)).Return(false); TempFolder.CleanFolder(fileSystem, AppKey); }
public void TempFolderFailsOnEmptyAppKeyTest() { var fileSystem = MockRepository.GenerateStrictMock <IFileSystem>(); var exception = Assert.Throws <ArgumentException> ( () => { var emptyAppKey = string.Empty; TempFolder.CleanFolder(fileSystem, emptyAppKey); } ); Assert.AreEqual(@"applicationKey", exception.ParamName); }
public void TempFolderCleanTest() { var fileSystem = MockRepository.GenerateStrictMock <IFileSystem>(); var tempFolder = Path.GetTempPath(); var appTempFolder = Path.Combine(tempFolder, AppKey); var tempFile1 = Path.Combine(appTempFolder, "file1.png"); var tempFile2 = Path.Combine(appTempFolder, "file2.png"); var subFolder = Path.Combine(appTempFolder, "folder1"); var tempFile3 = Path.Combine(subFolder, "file3.png"); string[] fileSystemEntries = { tempFile1, tempFile2, subFolder, tempFile3 }; fileSystem.Stub(f => f.GetTempPath()).Return(tempFolder); fileSystem.Stub(f => f.DirectoryExists(appTempFolder)).Return(true); fileSystem .Stub(f => f.EnumerateFileSystemEntries(appTempFolder, "*.*", SearchOption.AllDirectories)) .Return(fileSystemEntries); fileSystem.Stub(f => f.FileExists(tempFile3)).Return(true); fileSystem.Stub(f => f.DeleteFile(tempFile3)); fileSystem.Stub(f => f.FileExists(subFolder)).Return(false); fileSystem.Stub(f => f.DirectoryExists(subFolder)).Return(true); fileSystem.Stub(f => f.DeleteDirectory(subFolder)); fileSystem.Stub(f => f.FileExists(tempFile2)).Return(true); fileSystem .Stub(f => f.DeleteFile(tempFile2)) .Throw(new IOException()); fileSystem.Stub(f => f.FileExists(tempFile1)).Return(true); fileSystem.Stub(f => f.DeleteFile(tempFile1)); TempFolder.CleanFolder(fileSystem, AppKey); }