public void import_should_persist_data_to_the_repository() { // Arrange string[] args = { "--import" }; var server1 = CreateFakeServer("JabberWocky1"); var environment = new Environment(); environment.Name = "PRODUCTION"; environment.Servers.Add(server1); var config = new ConfigurationMock(); config.Environments.Add(environment); var repository = new RepositoryMock(); var runner = new Runner(config, repository); // Act runner.Run(args); // Assert string output = _consoleWriter.ToString(); Assert.That(output, Is.StringContaining("Finished.")); Assert.That(repository.LogEntries.Count, Is.EqualTo(FULL_LOG_ROW_COUNT)); }
public void environment_arg_should_scan_a_single_environment() { // Arrange string[] args = { "--environment=DEV", "--import" }; var server1 = CreateFakeServer("JabberWocky1"); var server2 = CreateFakeServer("JabberWocky2"); var environmentProd = new Environment(); environmentProd.Name = "PRODUCTION"; environmentProd.Servers.Add(server1); var environmentDev = new Environment(); environmentDev.Name = "DEV"; environmentDev.Servers.Add(server1); environmentDev.Servers.Add(server2); var config = new ConfigurationMock(); config.Environments.Add(environmentProd); config.Environments.Add(environmentDev); var repository = new RepositoryMock(); var runner = new Runner(config, repository); // Act runner.Run(args); // Assert string output = _consoleWriter.ToString(); Assert.That(output, Is.StringContaining("Finished.")); Assert.That(repository.LogEntries.Count, Is.EqualTo(FULL_LOG_ROW_COUNT * 2)); }
public void read_should_return_empty_list_when_file_is_empty() { // Arrange var container = CreateContainer("ExampleLogs/empty.log"); var repository = new RepositoryMock(); var logFileParser = new DefaultNLogFormatParser(repository, false); // Act logFileParser.ParseAndSave(container); IEnumerable<LogEntry> list = repository.LogEntries; // Assert Assert.That(list, Is.Not.Null); Assert.That(list.Count(), Is.EqualTo(0)); }
public void read_should_parse_last_exception_type_and_message_from_entry_stack() { // Arrange var container = CreateContainer("ExampleLogs/full.log"); var repository = new RepositoryMock(); var logFileParser = new DefaultNLogFormatParser(repository, false); // Act logFileParser.ParseAndSave(container); List<LogEntry> list = repository.LogEntries; // Assert var entry = list[1]; Assert.That(entry.DateTime, Is.GreaterThan(DateTime.MinValue)); Assert.That(entry.ExceptionType, Is.EqualTo("System.NeedSleepException")); Assert.That(entry.ExceptionMessage, Is.EqualTo("I can't get no sleep sleep sleep.")); }
public void read_should_parse_all_entries() { // Arrange var container = CreateContainer("ExampleLogs/full.log"); var repository = new RepositoryMock(); DateTime expectedDate = DateTime.Parse("2015-09-24 10:25:13.7780"); var logFileParser = new DefaultNLogFormatParser(repository, false); // Act logFileParser.ParseAndSave(container); IEnumerable<LogEntry> list = repository.LogEntries; // Assert Assert.That(list, Is.Not.Null); Assert.That(list.Count(), Is.EqualTo(648)); var entry = list.FirstOrDefault(); Assert.That(entry.DateTime, Is.EqualTo(expectedDate)); Assert.That(entry.ApplicationName, Is.EqualTo(APP_NAME)); Assert.That(entry.Server, Is.EqualTo(container.Server.Name)); Assert.That(entry.Environment, Is.EqualTo(container.Environment.Name)); Assert.That(entry.Source, Is.EqualTo("AmazingApp")); Assert.That(entry.Message, Is.EqualTo("A non critical error occured on Page:http://www.example.com/Places/To/Buy/Caravans/WestLondon.html\r\n")); }
public void no_arguments_should_display_help(string args) { // Arrange var repository = new RepositoryMock(); var config = new ConfigurationMock(); var runner = new Runner(config, repository); // Act runner.Run(new string[] {args}); // Assert string output = _consoleWriter.ToString(); Assert.That(output, Is.StringContaining("Kelpie import tool")); Assert.That(output, Is.StringContaining("--help")); }
public void wipedata_arg_should_clear_the_repository() { // Arrange string[] args = { "--wipedata" }; var repository = new RepositoryMock(); repository.LogEntries.Add(new LogEntry()); repository.LogEntries.Add(new LogEntry()); var config = new ConfigurationMock(); var runner = new Runner(config, repository); // Act runner.Run(args); // Assert string output = _consoleWriter.ToString(); Assert.That(output, Is.StringContaining("Finished.")); Assert.That(repository.LogEntries.Count, Is.EqualTo(0)); }