Skip to content

Commit 5134560

Browse files
committed
Unit tests for OutputTemplateRenderer for UtcTimestamp token enhanced
- assert that UtcTimestamp in default format (no custom format string) renders without the +00:00 time-zone suffix. Relates to serilog#164
1 parent 5a73023 commit 5134560

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

test/Serilog.Sinks.Console.Tests/Output/OutputTemplateRendererTests.cs

+8-4
Original file line numberDiff line numberDiff line change
@@ -405,25 +405,29 @@ public void TraceAndSpanAreIncludedWhenPresent()
405405
public void TimestampTokenRendersLocalTime()
406406
{
407407
var logTimestampWithTimeZoneOffset = DateTimeOffset.Parse("2024-09-03T14:15:16.079+02:00", CultureInfo.InvariantCulture);
408-
var formatter = new OutputTemplateRenderer(ConsoleTheme.None, "{Timestamp:yyyy-MM-dd HH:mm:ss}", CultureInfo.InvariantCulture);
408+
var formatter = new OutputTemplateRenderer(ConsoleTheme.None,
409+
"Default Format: {Timestamp} / Custom Format String: {Timestamp:yyyy-MM-dd HH:mm:ss}",
410+
CultureInfo.InvariantCulture);
409411
var evt = new LogEvent(logTimestampWithTimeZoneOffset, LogEventLevel.Debug, null,
410412
new MessageTemplate(Enumerable.Empty<MessageTemplateToken>()), Enumerable.Empty<LogEventProperty>());
411413
var sw = new StringWriter();
412414
formatter.Format(evt, sw);
413415
// expect time in local time, unchanged from the input, the +02:00 offset should not affect the output
414-
Assert.Equal("2024-09-03 14:15:16", sw.ToString());
416+
Assert.Equal("Default Format: 09/03/2024 14:15:16 +02:00 / Custom Format String: 2024-09-03 14:15:16", sw.ToString());
415417
}
416418

417419
[Fact]
418420
public void UtcTimestampTokenRendersUtcTime()
419421
{
420422
var logTimestampWithTimeZoneOffset = DateTimeOffset.Parse("2024-09-03T14:15:16.079+02:00", CultureInfo.InvariantCulture);
421-
var formatter = new OutputTemplateRenderer(ConsoleTheme.None, "{UtcTimestamp:yyyy-MM-dd HH:mm:ss}", CultureInfo.InvariantCulture);
423+
var formatter = new OutputTemplateRenderer(ConsoleTheme.None,
424+
"Default Format: {UtcTimestamp} / Custom Format String: {UtcTimestamp:yyyy-MM-dd HH:mm:ss}",
425+
CultureInfo.InvariantCulture);
422426
var evt = new LogEvent(logTimestampWithTimeZoneOffset, LogEventLevel.Debug, null,
423427
new MessageTemplate(Enumerable.Empty<MessageTemplateToken>()), Enumerable.Empty<LogEventProperty>());
424428
var sw = new StringWriter();
425429
formatter.Format(evt, sw);
426430
// expect time in UTC, the +02:00 offset must be applied to adjust the hour
427-
Assert.Equal("2024-09-03 12:15:16", sw.ToString());
431+
Assert.Equal("Default Format: 09/03/2024 12:15:16 / Custom Format String: 2024-09-03 12:15:16", sw.ToString());
428432
}
429433
}

0 commit comments

Comments
 (0)