public void WhenGetSimpleEvent_ThenResult_ShouldBeExpected() { var options = new GraylogSinkOptions(); var target = new GelfMessageBuilder("localhost", options); var date = DateTimeOffset.Now; var expected = new { facility = "GELF", full_message = "abcdef\"zxc\"", host = "localhost", level = 2, short_message = "abcdef\"zxc\"", timestamp = date.DateTime, version = "1.1", _stringLevel = "Information", _TestProp = "\"zxc\"", _id_ = "\"asd\"" }; LogEvent logEvent = LogEventSource.GetSimpleLogEvent(date); string expectedString = JsonConvert.SerializeObject(expected, Newtonsoft.Json.Formatting.None); string actual = target.Build(logEvent).ToString(Newtonsoft.Json.Formatting.None); //actual.ShouldBeEquivalentTo(expectedString); }
public void GetSimpleLogEvent_GraylogSinkOptionsContainsHost_ReturnsOptionsHost() { //arrange GraylogSinkOptions options = new GraylogSinkOptions() { Host = "my_host" }; GelfMessageBuilder messageBuilder = new GelfMessageBuilder("localhost", options); DateTime date = DateTime.UtcNow; string expectedHost = "my_host"; //act LogEvent logEvent = LogEventSource.GetSimpleLogEvent(date); JObject actual = messageBuilder.Build(logEvent); string actualHost = actual.Value <string>("host"); //assert Assert.Equal(expectedHost, actualHost); }
public void WhenLogEvent_ThenMessageBuilderShouldBeCalled() { var errorBuilder = new Mock <IMessageBuilder>(); var messageBuilder = new Mock <IMessageBuilder>(); var messageBuilders = new Dictionary <BuilderType, Lazy <IMessageBuilder> > { [BuilderType.Exception] = new Lazy <IMessageBuilder>(() => errorBuilder.Object), [BuilderType.Message] = new Lazy <IMessageBuilder>(() => messageBuilder.Object) }; GelfConverter target = new GelfConverter(messageBuilders); var simpleEvent = LogEventSource.GetSimpleLogEvent(DateTimeOffset.Now); target.GetGelfJson(simpleEvent); errorBuilder.Verify(c => c.Build(simpleEvent), Times.Never); messageBuilder.Verify(c => c.Build(simpleEvent), Times.Once); }