File tree Expand file tree Collapse file tree 2 files changed +15
-1
lines changed
src/BenchmarkDotNet/Configs
tests/BenchmarkDotNet.Tests/Configs Expand file tree Collapse file tree 2 files changed +15
-1
lines changed Original file line number Diff line number Diff line change @@ -40,7 +40,7 @@ public static ImmutableConfig Create(IConfig source)
40
40
var uniqueLoggers = source . GetLoggers ( ) . ToImmutableHashSet ( ) ;
41
41
var configAnalyse = new List < Conclusion > ( ) ;
42
42
43
- var uniqueHardwareCounters = source . GetHardwareCounters ( ) . ToImmutableHashSet ( ) ;
43
+ var uniqueHardwareCounters = source . GetHardwareCounters ( ) . Where ( counter => counter != HardwareCounter . NotSet ) . ToImmutableHashSet ( ) ;
44
44
var uniqueDiagnosers = GetDiagnosers ( source . GetDiagnosers ( ) , uniqueHardwareCounters ) ;
45
45
var uniqueExporters = GetExporters ( source . GetExporters ( ) , uniqueDiagnosers , configAnalyse ) ;
46
46
var uniqueAnalyzers = GetAnalysers ( source . GetAnalysers ( ) , uniqueDiagnosers ) ;
Original file line number Diff line number Diff line change @@ -71,6 +71,20 @@ public void DuplicateHardwareCountersAreExcluded()
71
71
Assert . Equal ( HardwareCounter . CacheMisses , final . GetHardwareCounters ( ) . Single ( ) ) ;
72
72
}
73
73
74
+ [ Fact ]
75
+ public void NoSetHardwareCounterIsExcluded ( )
76
+ {
77
+ var mutable = ManualConfig . CreateEmpty ( ) ;
78
+
79
+ mutable . AddHardwareCounters ( HardwareCounter . NotSet ) ;
80
+ mutable . AddHardwareCounters ( HardwareCounter . CacheMisses ) ;
81
+
82
+ var final = ImmutableConfigBuilder . Create ( mutable ) ;
83
+
84
+ Assert . Single ( final . GetHardwareCounters ( ) ) ;
85
+ Assert . Equal ( HardwareCounter . CacheMisses , final . GetHardwareCounters ( ) . Single ( ) ) ;
86
+ }
87
+
74
88
[ FactClassicDotNetOnly ( skipReason : "We have hardware counters diagnosers only for Windows. This test is disabled for .NET Core because NativeAOT compiler goes crazy when some dependency has reference to TraceEvent..." ) ]
75
89
public void WhenUserDefinesHardwareCountersWeChooseTheRightDiagnoser ( )
76
90
{
You can’t perform that action at this time.
0 commit comments