diff --git a/src/NUnitTestAdapter/AdapterSettings.cs b/src/NUnitTestAdapter/AdapterSettings.cs index f065ebb6..6162d69c 100644 --- a/src/NUnitTestAdapter/AdapterSettings.cs +++ b/src/NUnitTestAdapter/AdapterSettings.cs @@ -150,6 +150,7 @@ public class AdapterSettings(ITestLogger logger) : IAdapterSettings public bool UseNUnitIdforTestCaseId { get; private set; } // default is false. public int ConsoleOut { get; private set; } public bool StopOnError { get; private set; } + public bool ThrowOnEachFailureUnderDebugger { get; private set; } public DiscoveryMethod DiscoveryMethod { get; private set; } = DiscoveryMethod.Current; public bool SkipNonTestAssemblies { get; private set; } @@ -257,6 +258,7 @@ public void Load(string settingsXml) IncludeStackTraceForSuites = GetInnerTextAsBool(nunitNode, nameof(IncludeStackTraceForSuites), true); EnsureAttachmentFileScheme = GetInnerTextAsBool(nunitNode, nameof(EnsureAttachmentFileScheme), false); SkipExecutionWhenNoTests = GetInnerTextAsBool(nunitNode, nameof(SkipExecutionWhenNoTests), false); + ThrowOnEachFailureUnderDebugger = GetInnerTextAsBool(nunitNode, nameof(ThrowOnEachFailureUnderDebugger), false); // Engine settings DiscoveryMethod = MapEnum(GetInnerText(nunitNode, nameof(DiscoveryMethod), Verbosity > 0), DiscoveryMethod.Current); diff --git a/src/NUnitTestAdapter/IAdapterSettings.cs b/src/NUnitTestAdapter/IAdapterSettings.cs index da7b04e7..d44f48ff 100644 --- a/src/NUnitTestAdapter/IAdapterSettings.cs +++ b/src/NUnitTestAdapter/IAdapterSettings.cs @@ -91,6 +91,7 @@ public interface IAdapterSettings char FullnameSeparator { get; } DiscoveryMethod DiscoveryMethod { get; } bool SkipNonTestAssemblies { get; } + bool ThrowOnEachFailureUnderDebugger { get; } int AssemblySelectLimit { get; } diff --git a/src/NUnitTestAdapter/NUnitTestAdapter.cs b/src/NUnitTestAdapter/NUnitTestAdapter.cs index 14666e7a..4cf8309b 100644 --- a/src/NUnitTestAdapter/NUnitTestAdapter.cs +++ b/src/NUnitTestAdapter/NUnitTestAdapter.cs @@ -250,6 +250,9 @@ protected TestPackage CreateTestPackage(string assemblyName, IGrouping public const string StopOnError = "StopOnError"; + /// + /// If true, asserts in multiple asserts block will throw first-chance exception on failure. + /// + public const string ThrowOnEachFailureUnderDebugger = "ThrowOnEachFailureUnderDebugger"; + /// /// If true, use of the event queue is suppressed and test events are synchronous. ///