public void CachingLogger_EmitResultsCorrectlyBasedOnRules() { Result result01 = GenerateResult(); ReportingDescriptor rule01 = GenerateRule(); var logger = new CachingLogger(); Assert.Throws <ArgumentNullException>(() => logger.Log(null, result01)); Assert.Throws <ArgumentNullException>(() => logger.Log(rule01, null)); rule01.Id = "TEST0001"; result01.RuleId = "TEST0002"; Assert.Throws <ArgumentException>(() => logger.Log(rule01, result01)); rule01.Id = "TEST0001"; result01.RuleId = "TEST0001"; // Validate simple insert logger.Log(rule01, result01); logger.Results.Should().HaveCount(1); logger.Results.Should().ContainKey(rule01); // Updating value from a specific key logger.Log(rule01, result01); logger.Results.Should().HaveCount(1); logger.Results.Should().ContainKey(rule01); logger.Results[rule01].Should().HaveCount(2); }
public void CachingLogger_EmitNotificationsCorrectly() { string messageGuid = Guid.NewGuid().ToString(); var notification = new Notification { Message = new Message { Text = messageGuid } }; var logger = new CachingLogger(); logger.LogConfigurationNotification(notification); logger.ConfigurationNotifications.Should().HaveCount(1); logger.LogToolNotification(notification); logger.ToolNotifications.Should().HaveCount(1); }