public async Task GetPeople_OnNoException_NothingLogged() { var wrapped = new BrokenReader(0); var logger = new StringLogger(); var reader = new ExceptionLoggingReader(wrapped, logger); await reader.GetPeople(); Assert.IsEmpty(logger.Log); }
private static void ComposeObjects() { var reader = new ServiceReader(); var delay = new TimeSpan(0, 0, 3); var retryReader = new RetryReader(reader, delay); var logger = new FileLogger(); var loggingReader = new ExceptionLoggingReader(retryReader, logger); var duration = new TimeSpan(0, 0, 10); var cachingReader = new CachingReader(loggingReader, duration); var viewModel = new PeopleReaderViewModel(cachingReader); Application.Current.MainWindow = new MainWindow(viewModel); }
private static void ComposeObjects() { var reader = new ServiceReader(); var delay = new TimeSpan(0, 0, 3); var retryReader = new RetryReader(reader, delay); var logFilePath = AppDomain.CurrentDomain.BaseDirectory + "ExceptionLog.txt"; var logger = new FileLogger(logFilePath); var loggingReader = new ExceptionLoggingReader(retryReader, logger); var cachingReader = new CachingReader(loggingReader); var viewModel = new PeopleViewModel(cachingReader); Application.Current.MainWindow = new MainWindow(viewModel); }
public async Task GetPeople_OnException_ExceptionLogged() { var wrapped = new BrokenReader(1); var logger = new StringLogger(); var reader = new ExceptionLoggingReader(wrapped, logger); var expectedMessage = "INVALIDEXCEPTIONMESSAGE"; try { await reader.GetPeople(); Assert.Fail("No exception thrown"); } catch (Exception ex) { expectedMessage = ex.Message; } Assert.That(() => logger.Log.Contains(expectedMessage)); }
private static void ComposeObjects() { // Data Reader var readerUri = new ServiceReaderUri("http://localhost:9874"); var reader = new ServiceReader(readerUri); // Retry Function var delay = new TimeSpan(0, 0, 3); var retryReader = new RetryReader(reader, delay); // Exception Logging Function var logFilePath = AppDomain.CurrentDomain.BaseDirectory + "ExceptionLog.txt"; var logger = new FileLogger(logFilePath); var loggingReader = new ExceptionLoggingReader(retryReader, logger); // Caching Function var cachingReader = new CachingReader(loggingReader); var viewModel = new PeopleViewModel(retryReader); Application.Current.MainWindow = new MainWindow(viewModel); }