Skip to content

Commit df41b8d

Browse files
committed
Simplify benchmarks
1 parent 70cd068 commit df41b8d

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

src/Benchmarks/JsonNetBenchmarks.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,15 +52,20 @@ public void Setup()
5252
});
5353
_value = JsonConvert.DeserializeObject<dynamic>(ser)!;
5454

55-
var log = new LoggerConfiguration()
56-
.Destructure.JsonNetTypes()
57-
.CreateLogger();
55+
(_policy, _factory) = Build(c => c.Destructure.JsonNetTypes());
56+
}
57+
58+
private static (IDestructuringPolicy, ILogEventPropertyValueFactory) Build(Func<LoggerConfiguration, LoggerConfiguration> configure)
59+
{
60+
var configuration = new LoggerConfiguration();
61+
var logger = configure(configuration).CreateLogger();
5862

59-
var processor = log.GetType().GetField("_messageTemplateProcessor", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)!.GetValue(log)!;
63+
var processor = logger.GetType().GetField("_messageTemplateProcessor", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)!.GetValue(logger)!;
6064
var converter = processor.GetType().GetField("_propertyValueConverter", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)!.GetValue(processor)!;
61-
_factory = (ILogEventPropertyValueFactory)converter;
65+
var factory = (ILogEventPropertyValueFactory)converter;
6266
var policies = (IDestructuringPolicy[])converter.GetType().GetField("_destructuringPolicies", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)!.GetValue(converter)!;
63-
_policy = policies.First(p => p is JsonNetDestructuringPolicy);
67+
var policy = policies.First(p => p is JsonNetDestructuringPolicy);
68+
return (policy, factory);
6469
}
6570

6671
[Benchmark]

0 commit comments

Comments
 (0)