Skip to content

Commit df19ac2

Browse files
committed
added tests with timestamps to TemplateEvaluationTests
1 parent 7ba1fbc commit df19ac2

File tree

3 files changed

+18
-2
lines changed

3 files changed

+18
-2
lines changed

test/Serilog.Expressions.Tests/Cases/template-evaluation-cases.asv

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,5 @@ Culture-specific {42.34} ⇶ Culture-specific 42,34
3333
{rest()} ⇶ {"Name":"nblumhardt"}
3434
{Name} {rest()} ⇶ nblumhardt {}
3535
{rest(true)} ⇶ {}
36+
{@t:yyyy-MM-dd HH:mm:ss.ffff zzz} ⇶ 2000-12-31 23:59:58.1230 +10:00
37+
{@t:yyyy-MM-dd HH:mm:ss.ffff zzz------------------} ⇶ 2000-12-31 23:59:58.1230 +10:00------------------

test/Serilog.Expressions.Tests/Support/Some.cs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,22 @@ public static LogEvent InformationEvent(string messageTemplate = "Hello, world!"
1212
return LogEvent(LogEventLevel.Information, messageTemplate, propertyValues);
1313
}
1414

15+
public static LogEvent InformationEvent(DateTimeOffset timestamp, string messageTemplate = "Hello, world!", params object?[] propertyValues)
16+
{
17+
return LogEvent(timestamp, LogEventLevel.Information, messageTemplate, propertyValues);
18+
}
19+
1520
public static LogEvent WarningEvent(string messageTemplate = "Hello, world!", params object?[] propertyValues)
1621
{
1722
return LogEvent(LogEventLevel.Warning, messageTemplate, propertyValues);
1823
}
1924

2025
public static LogEvent LogEvent(LogEventLevel level, string messageTemplate = "Hello, world!", params object?[] propertyValues)
26+
{
27+
return LogEvent(DateTimeOffset.Now, level, messageTemplate, propertyValues);
28+
}
29+
30+
public static LogEvent LogEvent(DateTimeOffset timestamp, LogEventLevel level, string messageTemplate = "Hello, world!", params object?[] propertyValues)
2131
{
2232
var log = new LoggerConfiguration().CreateLogger();
2333
#pragma warning disable Serilog004 // Constant MessageTemplate verifier
@@ -26,7 +36,7 @@ public static LogEvent LogEvent(LogEventLevel level, string messageTemplate = "H
2636
{
2737
throw new XunitException("Template could not be bound.");
2838
}
29-
return new(DateTimeOffset.Now, level, null, template, properties);
39+
return new(timestamp, level, null, template, properties);
3040
}
3141

3242
public static object AnonymousObject()

test/Serilog.Expressions.Tests/TemplateEvaluationTests.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System.Globalization;
2+
using Serilog.Events;
23
using Serilog.Expressions.Tests.Support;
34
using Serilog.Templates;
45
using Xunit;
@@ -7,14 +8,17 @@ namespace Serilog.Expressions.Tests;
78

89
public class TemplateEvaluationTests
910
{
11+
static readonly DateTimeOffset TestTimestamp = new(
12+
2000, 12, 31, 23, 59, 58, 123, TimeSpan.FromHours(10));
13+
1014
public static IEnumerable<object[]> TemplateEvaluationCases =>
1115
AsvCases.ReadCases("template-evaluation-cases.asv");
1216

1317
[Theory]
1418
[MemberData(nameof(TemplateEvaluationCases))]
1519
public void TemplatesAreCorrectlyEvaluated(string template, string expected)
1620
{
17-
var evt = Some.InformationEvent("Hello, {Name}!", "nblumhardt");
21+
var evt = Some.InformationEvent(TestTimestamp, "Hello, {Name}!", "nblumhardt");
1822
var frFr = CultureInfo.GetCultureInfoByIetfLanguageTag("fr-FR");
1923
var compiled = new ExpressionTemplate(template, formatProvider: frFr);
2024
var output = new StringWriter();

0 commit comments

Comments
 (0)