public async Task TextFileRamDiskDirectory_FileExists_False() { // ILogger will only print to Output when tests are run in Debug mode. ILogger logger = new Logger(); logger.SetWorker( (type, loggingLevel, logAction, message) => { Debug.WriteLine("ILogger: {0}, {1}, {2}, {3}", type, loggingLevel, logAction, message); } ); logger.Log(this.GetType(), LoggingLevel.System, LogAction.UnitTestStart, "TextFileRamDiskDirectory_FileExists_False"); var directory = new TextFileRamDiskDirectory("testName", logger: logger); Assert.IsFalse(directory.FileExists("something.txt")); logger.Log(this.GetType(), LoggingLevel.System, LogAction.UnitTestEnd, "TextFileRamDiskDirectory_FileExists_False"); }
public async Task SaveToDevice_Throws_SaveToDeviceException() { ILogger logger = new Logger(); logger.SetWorker( (type, loggingLevel, logAction, message) => { // The Logger will only print to Output when tests are run in Debug mode. Debug.WriteLine("ILogger: {0}, {1}, {2}, {3}", type, loggingLevel, logAction, message); } ); logger.Log(this.GetType(), LoggingLevel.System, LogAction.UnitTestStart, "SaveToDevice_Throws_SaveToDeviceException"); var directory = new TextFileRamDiskDirectory("testDirectoryName", null, logger); Assert.IsFalse(directory.CanSaveToDevice); var file = directory.OpenWriter("TestFileName.txt", false); await file.WriteAsync( "Text that wont be saved to device because ISaveToDeviceManager object not passed into directory when instantiated"); file.Close(); var isExceptionThrown = false; try { await directory.SaveFilesToDevice(); } catch (SaveToDeviceException ex) { Assert.IsTrue( ex.Message.Equals( "SaveToDeviceException: Device Storage Manager implementing ISaveToDevice interface was not passed into TextFileRamDiskDirectory with directory name testDirectoryName. [Com.Xamtastic.Patterns.TextFileRamDisk.Exceptions]")); isExceptionThrown = true; } Assert.IsTrue(isExceptionThrown); logger.Log(this.GetType(), LoggingLevel.System, LogAction.UnitTestEnd, "SaveToDevice_Throws_SaveToDeviceException"); }
public async Task TextFileRamDiskDirectory_GetFileSize_GreaterThan0() { // ILogger will only print to Output when tests are run in Debug mode. ILogger logger = new Logger(); logger.SetWorker( (type, loggingLevel, logAction, message) => { Debug.WriteLine("ILogger: {0}, {1}, {2}, {3}", type, loggingLevel, logAction, message); } ); logger.Log(this.GetType(), LoggingLevel.System, LogAction.UnitTestStart, "TextFileRamDiskDirectory_GetFileSize_GreaterThan0"); var directory = new TextFileRamDiskDirectory("testName", logger: logger); using (var write = directory.OpenWriter("something.txt", true)) { Assert.IsTrue(directory.FileExists("something.txt")); await write.WriteAsync("Test text"); } var size = directory.GetFileSize("something.txt"); Assert.IsTrue(directory.GetFileSize("something.txt") > 0); logger.Log(this.GetType(), LoggingLevel.System, LogAction.UnitTestEnd, "TextFileRamDiskDirectory_GetFileSize_GreaterThan0"); }