1
1
using BenchmarkDotNet . Configs ;
2
- using BenchmarkDotNet . Loggers ;
3
2
using BenchmarkDotNet . Running ;
4
3
using BenchmarkDotNet . TestAdapter . Remoting ;
5
4
using Microsoft . VisualStudio . TestPlatform . ObjectModel ;
6
5
using System ;
7
6
using System . Collections . Generic ;
8
- using System . Collections . Immutable ;
9
7
using System . Linq ;
10
- using System . Reflection ;
11
8
using System . Threading ;
12
9
13
10
namespace BenchmarkDotNet . TestAdapter
@@ -17,9 +14,6 @@ namespace BenchmarkDotNet.TestAdapter
17
14
/// </summary>
18
15
internal class BenchmarkExecutor
19
16
{
20
- // Gets FieldInfo of ImmutableConfig's loggers.
21
- private static readonly FieldInfo ? loggersField = typeof ( ImmutableConfig ) . GetField ( "loggers" , BindingFlags . Instance | BindingFlags . NonPublic ) ;
22
-
23
17
private readonly CancellationTokenSource cts = new ( ) ;
24
18
25
19
/// <summary>
@@ -70,21 +64,10 @@ public void RunBenchmarks(string assemblyPath, TestExecutionRecorderWrapper reco
70
64
71
65
// Modify all the benchmarks so that the event process and logger is added.
72
66
benchmarks = benchmarks
73
- . Select ( b =>
74
- {
75
- ImmutableConfig config = b . Config . AddEventProcessor ( eventProcessor ) . AddLogger ( logger ) . CreateImmutableConfig ( ) ;
76
-
77
- // Remove console logger from ImmutableCofig to fix duplicated console logs are outputted issue.
78
- if ( loggersField != null && loggersField . DeclaringType == typeof ( ImmutableHashSet ) )
79
- {
80
- var loggers = config . GetLoggers ( )
81
- . Where ( x => x is not ConsoleLogger )
82
- . ToImmutableHashSet ( ) ;
83
- loggersField . SetValue ( config , loggers ) ;
84
- }
85
-
86
- return new BenchmarkRunInfo ( b . BenchmarksCases , b . Type , config ) ;
87
- } )
67
+ . Select ( b => new BenchmarkRunInfo (
68
+ b . BenchmarksCases ,
69
+ b . Type ,
70
+ b . Config . AddEventProcessor ( eventProcessor ) . AddLogger ( logger ) . CreateImmutableConfig ( ) ) )
88
71
. ToArray ( ) ;
89
72
90
73
// Run all the benchmarks, and ensure that any tests that don't have a result yet are sent.
0 commit comments