diff --git a/tests/BenchmarkDotNet.IntegrationTests/ArgumentsTests.cs b/tests/BenchmarkDotNet.IntegrationTests/ArgumentsTests.cs index bcdaa9cdcf..77d8ecb931 100644 --- a/tests/BenchmarkDotNet.IntegrationTests/ArgumentsTests.cs +++ b/tests/BenchmarkDotNet.IntegrationTests/ArgumentsTests.cs @@ -24,7 +24,7 @@ public static IEnumerable GetToolchains() public ArgumentsTests(ITestOutputHelper output) : base(output) { } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void ArgumentsArePassedToBenchmarks(IToolchain toolchain) => CanExecute(toolchain); public class WithArguments @@ -61,7 +61,7 @@ public ValueTask SimpleValueTaskAsync(bool boolean, int number) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void ArgumentsFromSourceArePassedToBenchmarks(IToolchain toolchain) => CanExecute(toolchain); public class WithArgumentsSource @@ -81,7 +81,7 @@ public IEnumerable ArgumentsProvider() } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void ArgumentsFromSourceInAnotherClassArePassedToBenchmarks(IToolchain toolchain) => CanExecute(toolchain); public class WithArgumentsSourceInAnotherClass @@ -103,7 +103,7 @@ public static IEnumerable ArgumentsProvider() } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void ArgumentsCanBePassedByReferenceToBenchmark(IToolchain toolchain) => CanExecute(toolchain); public class WithRefArguments @@ -118,7 +118,7 @@ public void Simple(ref bool boolean, ref int number) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void ArgumentsCanBePassedByReadonlyReferenceToBenchmark(IToolchain toolchain) => CanExecute(toolchain); public class WithInArguments @@ -133,7 +133,7 @@ public void Simple(in bool boolean, in int number) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void NonCompileTimeConstantsCanBeReturnedFromSource(IToolchain toolchain) => CanExecute(toolchain); public class WithComplexTypesReturnedFromSources @@ -190,7 +190,7 @@ public struct SomeStruct } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void ArrayCanBeUsedAsArgument(IToolchain toolchain) => CanExecute(toolchain); public class WithArray @@ -208,7 +208,7 @@ public void AcceptingArray(int[] array) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void IEnumerableCanBeUsedAsArgument(IToolchain toolchain) => CanExecute(toolchain); public class WithIEnumerable @@ -233,7 +233,7 @@ public IEnumerable Sources() public void Any(string name, IEnumerable source) => source.Any(); } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void JaggedArrayCanBeUsedAsArgument(IToolchain toolchain) => CanExecute(toolchain); public class WithJaggedArray @@ -269,7 +269,7 @@ public IEnumerable CreateMatrix() } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void GenericTypeCanBePassedByRefAsArgument(IToolchain toolchain) => CanExecute(toolchain); public class WithGenericByRef @@ -305,7 +305,7 @@ public IEnumerable GetInputData() } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void AnArrayOfTypeWithNoParameterlessCtorCanBePassedAsArgument(IToolchain toolchain) => CanExecute(toolchain); public class WithArrayOfStringAsArgument @@ -322,7 +322,7 @@ public void TypeReflectionArrayGetType(object anArray) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void AnArrayCanBePassedToBenchmarkAsSpan(IToolchain toolchain) => CanExecute(toolchain); public class WithArrayToSpan @@ -342,7 +342,7 @@ public void AcceptsSpan(Span span) [TheoryEnvSpecific("The implicit cast operator is available only in .NET Core 2.1+ (See https://github.com/dotnet/corefx/issues/30121 for more)", EnvRequirement.DotNetCoreOnly)] - [MemberData(nameof(GetToolchains))] + [MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void StringCanBePassedToBenchmarkAsReadOnlySpan(IToolchain toolchain) => CanExecute(toolchain); public class WithStringToReadOnlySpan @@ -360,7 +360,7 @@ public void AcceptsReadOnlySpan(ReadOnlySpan notString) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void AnArrayOfStringsCanBeUsedAsArgument(IToolchain toolchain) => CanExecute(toolchain); @@ -380,7 +380,7 @@ public void TypeReflectionArrayGetType(string[] array) } } - [Theory, MemberData(nameof(GetToolchains))] // make sure BDN mimics xunit's MemberData behaviour + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] // make sure BDN mimics xunit's MemberData behaviour public void AnIEnumerableOfArrayOfObjectsCanBeUsedAsArgumentForBenchmarkAcceptingSingleArgument(IToolchain toolchain) => CanExecute(toolchain); @@ -400,7 +400,7 @@ public void SingleArgument(bool boolean) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void BenchmarkCanAcceptFewArrays(IToolchain toolchain) => CanExecute(toolchain); public class FewArrays @@ -429,7 +429,7 @@ public void AcceptsArrays(int[] even, int[] notEven) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void VeryBigIntegersAreSupported(IToolchain toolchain) => CanExecute(toolchain); public class WithVeryBigInteger @@ -450,7 +450,7 @@ public void Method(BigInteger passed) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void SpecialDoubleValuesAreSupported(IToolchain toolchain) => CanExecute(toolchain); public class WithSpecialDoubleValues @@ -495,7 +495,7 @@ public void Method(double passed, string name) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void SpecialFloatValuesAreSupported(IToolchain toolchain) => CanExecute(toolchain); public class WithSpecialFloatValues @@ -540,7 +540,7 @@ public void Method(float passed, string name) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void SpecialDecimalValuesAreSupported(IToolchain toolchain) => CanExecute(toolchain); public class WithSpecialDecimalValues @@ -569,7 +569,7 @@ public void Method(decimal passed, string name) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void DateTimeCanBeUsedAsArgument(IToolchain toolchain) => CanExecute(toolchain); public class WithDateTime @@ -590,7 +590,7 @@ public void Test(DateTime passed) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void CustomTypeThatAlsoExistsInTheSystemNamespaceAsArgument(IToolchain toolchain) => CanExecute(toolchain); public class CustomTypeThatAlsoExistsInTheSystemNamespace @@ -611,7 +611,7 @@ public void Test(Action passed) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void EnumFlagsAreSupported(IToolchain toolchain) => CanExecute(toolchain); public class WithEnumFlags @@ -648,7 +648,7 @@ public void Test(LongFlagEnum passedLongFlagEnum, ByteFlagEnum passedByteFlagEnu } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void UndefinedEnumValuesAreSupported(IToolchain toolchain) => CanExecute(toolchain); public class WithUndefinedEnumValue @@ -674,7 +674,7 @@ public void Test(SomeEnum defined, SomeEnum undefined, SomeEnum undefinedNegativ } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void StaticMethodsAndPropertiesCanBeUsedAsSources_EnumerableOfObjects(IToolchain toolchain) => CanExecute(toolchain); @@ -722,7 +722,7 @@ public void TestProperty(int argument) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void StaticMethodsAndPropertiesCanBeUsedAsSources_EnumerableOfArrayOfObjects(IToolchain toolchain) => CanExecute(toolchain); @@ -769,7 +769,7 @@ public void TestProperty(int argument) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void MethodsAndPropertiesFromAnotherClassCanBeUsedAsSources(IToolchain toolchain) => CanExecute(toolchain); @@ -805,7 +805,7 @@ public static IEnumerable Property } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void VeryLongStringsAreSupported(IToolchain toolchain) => CanExecute(toolchain); public class WithVeryLongString @@ -829,7 +829,7 @@ public void Test(string first, string second) } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void ComplexStringPattersAreSupported(IToolchain toolchain) => CanExecute(toolchain); public class Perf_Regex_Industry_RustLang_Sherlock diff --git a/tests/BenchmarkDotNet.IntegrationTests/DisassemblyDiagnoserTests.cs b/tests/BenchmarkDotNet.IntegrationTests/DisassemblyDiagnoserTests.cs index 26c17eed04..dbd220f007 100644 --- a/tests/BenchmarkDotNet.IntegrationTests/DisassemblyDiagnoserTests.cs +++ b/tests/BenchmarkDotNet.IntegrationTests/DisassemblyDiagnoserTests.cs @@ -88,7 +88,7 @@ public void Recursive() } [Theory] - [MemberData(nameof(GetAllJits))] + [MemberData(nameof(GetAllJits), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void CanDisassembleAllMethodCalls(Jit jit, Platform platform, Runtime runtime) { @@ -107,7 +107,7 @@ public void CanDisassembleAllMethodCalls(Jit jit, Platform platform, Runtime run } [Theory] - [MemberData(nameof(GetAllJits))] + [MemberData(nameof(GetAllJits), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void CanDisassembleAllMethodCallsUsingFilters(Jit jit, Platform platform, Runtime runtime) { @@ -132,7 +132,7 @@ public void CanDisassembleAllMethodCallsUsingFilters(Jit jit, Platform platform, } [Theory] - [MemberData(nameof(GetAllJits))] + [MemberData(nameof(GetAllJits), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void CanDisassembleGenericTypes(Jit jit, Platform platform, Runtime runtime) { @@ -154,7 +154,7 @@ [Benchmark] public void JustReturn() { } } [Theory] - [MemberData(nameof(GetAllJits))] + [MemberData(nameof(GetAllJits), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void CanDisassembleInlinableBenchmarks(Jit jit, Platform platform, Runtime runtime) { diff --git a/tests/BenchmarkDotNet.IntegrationTests/MemoryDiagnoserTests.cs b/tests/BenchmarkDotNet.IntegrationTests/MemoryDiagnoserTests.cs index 7d2e6d60df..169d18f454 100755 --- a/tests/BenchmarkDotNet.IntegrationTests/MemoryDiagnoserTests.cs +++ b/tests/BenchmarkDotNet.IntegrationTests/MemoryDiagnoserTests.cs @@ -51,7 +51,7 @@ public class AccurateAllocations [Benchmark] public Task AllocateTask() => Task.FromResult(-12345); } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void MemoryDiagnoserIsAccurate(IToolchain toolchain) { @@ -109,7 +109,7 @@ private void AllocateUntilGcWakesUp() } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void MemoryDiagnoserDoesNotIncludeAllocationsFromSetupAndCleanup(IToolchain toolchain) { @@ -135,7 +135,7 @@ public ulong TimeConsuming() } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void EngineShouldNotInterfereAllocationResults(IToolchain toolchain) { @@ -146,7 +146,7 @@ public void EngineShouldNotInterfereAllocationResults(IToolchain toolchain) } // #1542 - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void TieredJitShouldNotInterfereAllocationResults(IToolchain toolchain) { @@ -162,7 +162,7 @@ public class NoBoxing [Benchmark] public ValueTuple ReturnsValueType() => new ValueTuple(0); } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void EngineShouldNotIntroduceBoxing(IToolchain toolchain) { @@ -183,7 +183,7 @@ public class NonAllocatingAsynchronousBenchmarks [Benchmark] public ValueTask CompletedValueTaskOfT() => new ValueTask(default(int)); } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void AwaitingTasksShouldNotInterfereAllocationResults(IToolchain toolchain) { @@ -208,7 +208,7 @@ public void WithOperationsPerInvoke() private void DoNotInline(object left, object right) { } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void AllocatedMemoryShouldBeScaledForOperationsPerInvoke(IToolchain toolchain) { @@ -235,7 +235,7 @@ public byte[] SixtyFourBytesArray() } [TheoryEnvSpecific("Full Framework cannot measure precisely enough for low invocation counts.", EnvRequirement.DotNetCoreOnly)] - [MemberData(nameof(GetToolchains))] + [MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void AllocationQuantumIsNotAnIssueForNetCore21Plus(IToolchain toolchain) { @@ -301,7 +301,7 @@ public void Allocate() } [TheoryEnvSpecific("Full Framework cannot measure precisely enough", EnvRequirement.DotNetCoreOnly)] - [MemberData(nameof(GetToolchains))] + [MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void MemoryDiagnoserIsAccurateForMultiThreadedBenchmarks(IToolchain toolchain) { diff --git a/tests/BenchmarkDotNet.IntegrationTests/ParamSourceTests.cs b/tests/BenchmarkDotNet.IntegrationTests/ParamSourceTests.cs index ed105f8290..e58f6a67d7 100644 --- a/tests/BenchmarkDotNet.IntegrationTests/ParamSourceTests.cs +++ b/tests/BenchmarkDotNet.IntegrationTests/ParamSourceTests.cs @@ -96,7 +96,7 @@ public static IEnumerable GetSource() public int Benchmark() => ParamsTarget?.Data ?? 0; } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void PrivateClassWithPublicInterface_Succeeds(IToolchain toolchain) => CanExecuteWithExtraInfo(typeof(PrivateClassWithPublicInterface), toolchain); public class PrivateClassWithPublicInterface_Array @@ -116,7 +116,7 @@ public IEnumerable GetSource() public int Benchmark() => ParamsTarget?.Sum(p => p?.Data ?? 0) ?? 0; } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void PrivateClassWithPublicInterface_Array_Succeeds(IToolchain toolchain) => CanExecuteWithExtraInfo(typeof(PrivateClassWithPublicInterface_Array), toolchain); public class PrivateClassWithPublicInterface_Enumerable @@ -137,7 +137,7 @@ public IEnumerable> GetSource() public int Benchmark() => ParamsTarget?.Sum(p => p?.Data ?? 0) ?? 0; } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void PrivateClassWithPublicInterface_Enumerable_Succeeds(IToolchain toolchain) => CanExecuteWithExtraInfo(typeof(PrivateClassWithPublicInterface_Enumerable), toolchain); public class PrivateClassWithPublicInterface_AsObject @@ -156,7 +156,7 @@ public static IEnumerable GetSource() public int Benchmark() => ParamsTarget?.Data ?? 0; } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void PrivateClassWithPublicInterface_AsObject_Succeeds(IToolchain toolchain) => CanExecuteWithExtraInfo(typeof(PrivateClassWithPublicInterface_AsObject), toolchain); public class PublicSource diff --git a/tests/BenchmarkDotNet.IntegrationTests/TailCallDiagnoserTests.cs b/tests/BenchmarkDotNet.IntegrationTests/TailCallDiagnoserTests.cs index ab9fbbb645..71988ba7c9 100644 --- a/tests/BenchmarkDotNet.IntegrationTests/TailCallDiagnoserTests.cs +++ b/tests/BenchmarkDotNet.IntegrationTests/TailCallDiagnoserTests.cs @@ -53,7 +53,7 @@ public class NonTailCallBenchmarks } [TheoryEnvSpecific(WindowsOnly, EnvRequirement.WindowsOnly)] - [MemberData(nameof(GetJits))] + [MemberData(nameof(GetJits), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void TailCallDiagnoserCatchesTailCallEvents(Jit jit, Platform platform, Runtime runtime) { @@ -63,7 +63,7 @@ public void TailCallDiagnoserCatchesTailCallEvents(Jit jit, Platform platform, R } [TheoryEnvSpecific(WindowsOnly, EnvRequirement.WindowsOnly)] - [MemberData(nameof(GetJits))] + [MemberData(nameof(GetJits), DisableDiscoveryEnumeration = true)] [Trait(Constants.Category, Constants.BackwardCompatibilityCategory)] public void TailCallDiagnoserNotCatchesTailCallEvents(Jit jit, Platform platform, Runtime runtime) { diff --git a/tests/BenchmarkDotNet.IntegrationTests/ThreadingDiagnoserTests.cs b/tests/BenchmarkDotNet.IntegrationTests/ThreadingDiagnoserTests.cs index 724a882e22..c1a45d4e01 100644 --- a/tests/BenchmarkDotNet.IntegrationTests/ThreadingDiagnoserTests.cs +++ b/tests/BenchmarkDotNet.IntegrationTests/ThreadingDiagnoserTests.cs @@ -41,7 +41,7 @@ public static IEnumerable GetToolchains() // yield return new object[] { InProcessEmitToolchain.Instance }; } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void CompletedWorkItemCountIsAccurate(IToolchain toolchain) { var config = CreateConfig(toolchain); @@ -82,7 +82,7 @@ public void CompleteOneWorkItem() public void DoNothing() { } } - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void LockContentionCountIsAccurate(IToolchain toolchain) { var config = CreateConfig(toolchain); diff --git a/tests/BenchmarkDotNet.IntegrationTests/ValuesReturnedByBenchmarkTest.cs b/tests/BenchmarkDotNet.IntegrationTests/ValuesReturnedByBenchmarkTest.cs index f6a5d10428..e4eb071029 100644 --- a/tests/BenchmarkDotNet.IntegrationTests/ValuesReturnedByBenchmarkTest.cs +++ b/tests/BenchmarkDotNet.IntegrationTests/ValuesReturnedByBenchmarkTest.cs @@ -22,7 +22,7 @@ public static IEnumerable GetToolchains() => new[] new object[] { InProcessEmitToolchain.Instance }, }; - [Theory, MemberData(nameof(GetToolchains))] + [Theory, MemberData(nameof(GetToolchains), DisableDiscoveryEnumeration = true)] public void AnyValueCanBeReturned(IToolchain toolchain) => CanExecute(ManualConfig.CreateEmpty().AddJob(Job.Dry.WithToolchain(toolchain))); public class ValuesReturnedByBenchmark