Esempio n. 1
0
 public void WhenDbNullRawValueShouldWork()
 {
     SimpleLayout l = @"${event-properties:prop1:whenEmpty=${db-null}}";
     {
         var le = LogEventInfo.Create(LogLevel.Info, "logger", "message");
         le.Properties["prop1"] = 1;
         var success = l.TryGetRawValue(le, out var rawValue);
         Assert.True(success);
         Assert.Equal(1, rawValue);
     }
     // empty log message
     {
         var le      = LogEventInfo.Create(LogLevel.Info, "logger", "message");
         var success = l.TryGetRawValue(le, out var rawValue);
         Assert.True(success);
         Assert.Equal(DBNull.Value, rawValue);
     }
 }
Esempio n. 2
0
        public void TryGetRawValue_WhenEmpty_ShouldNotFailWithNullException()
        {
            // Arrange
            SimpleLayout l = "${event-properties:eventId:whenEmpty=0}";
            var logEventInfo = LogEventInfo.CreateNullEvent();
            l.Precalculate(logEventInfo);

            // Act
            var success = l.TryGetRawValue(logEventInfo, out var value);

            // Assert
            Assert.False(success, "Missing EventId");
        }
Esempio n. 3
0
        public void TryGetRawValue_MultipleLayoutRender_ShouldGiveNullRawValue()
        {
            // Arrange
            SimpleLayout l = "${sequenceid} ";
            var logEventInfo = LogEventInfo.CreateNullEvent();

            // Act
            var success = l.TryGetRawValue(logEventInfo, out var value);

            // Assert
            Assert.False(success);
            Assert.Null(value);
        }
Esempio n. 4
0
        public void WhenDbNullRawValueShouldWorkElse(string loggername, object expectedValue, bool expectedSuccess)
        {
            expectedValue = OptionalConvert(expectedValue);

            //else cannot be invoked ambiently. First param is inner
            SimpleLayout l = @"${when:something:when=logger=='logger':else=${db-null}}";

            var le      = LogEventInfo.Create(LogLevel.Info, loggername, "message");
            var success = l.TryGetRawValue(le, out var result);

            Assert.Equal(expectedValue, result);
            Assert.Equal(expectedSuccess, success);
        }
Esempio n. 5
0
        public void TryGetRawValue_SingleLayoutRender_ShouldGiveRawValue()
        {
            // Arrange
            SimpleLayout l = "${sequenceid}";
            var logEventInfo = LogEventInfo.CreateNullEvent();

            // Act
            var success = l.TryGetRawValue(logEventInfo, out var value);

            // Assert
            Assert.True(success, "success");
            Assert.IsType<int>(value);
            Assert.True((int)value >= 0, "(int)value >= 0");
        }
Esempio n. 6
0
        public void TryGetRawValue_MutableLayoutRender_ShouldGiveNullRawValue()
        {
            // Arrange
            SimpleLayout l = "${event-properties:builder}";
            var logEventInfo = LogEventInfo.CreateNullEvent();
            logEventInfo.Properties["builder"] = new StringBuilder("mybuilder");
            l.Precalculate(logEventInfo);

            // Act
            var success = l.TryGetRawValue(logEventInfo, out var value);

            // Assert
            Assert.False(success);
            Assert.Null(value);
        }
Esempio n. 7
0
        public void TryGetRawValue_ImmutableLayoutRender_ShouldGiveRawValue()
        {
            // Arrange
            SimpleLayout l = "${event-properties:correlationid}";
            var logEventInfo = LogEventInfo.CreateNullEvent();
            var correlationId = Guid.NewGuid();
            logEventInfo.Properties["correlationid"] = correlationId;
            l.Precalculate(logEventInfo);

            // Act
            var success = l.TryGetRawValue(logEventInfo, out var value);

            // Assert
            Assert.True(success, "success");
            Assert.IsType<Guid>(value);
            Assert.Equal(correlationId, value);
        }
Esempio n. 8
0
        public void LongDateTryGetRawValue()
        {
            // Arrange
            SimpleLayout l            = "${longdate:UniversalTime=true}";
            var          timestamp    = DateTime.Now;
            var          logEventInfo = LogEventInfo.CreateNullEvent();

            logEventInfo.TimeStamp = timestamp;

            // Act
            var success = l.TryGetRawValue(logEventInfo, out var value);

            // Assert
            Assert.True(success, "success");
            Assert.IsType <DateTime>(value);
            Assert.Equal(timestamp.ToUniversalTime(), (DateTime)value);
        }