diff --git a/Issue1713/.runsettings b/Issue1713/.runsettings
new file mode 100644
index 0000000..f57be21
--- /dev/null
+++ b/Issue1713/.runsettings
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+ .\TestResults
+
+
+ 0
+
+
+
+ 10000
+
+
+ false
+
+
+
+
+
+ false
+ false
+ true
+
+
+ 10
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ 0
+
+ Off
+
+ -1
+ 0
+
+
+
+
+ false
+ false
+ false
+
+
+
+ 1
+ true
+ false
+ false
+ Skipped
+
+ Name
+
+ :
+ Current
+
+ 2000
+ false
+ true
+ Strict
+ false
+
+
+
diff --git a/Issue1713/Dummy.cs b/Issue1713/Dummy.cs
new file mode 100644
index 0000000..147693a
--- /dev/null
+++ b/Issue1713/Dummy.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Issue1713Dummy;
+
+internal class Dummy
+{
+ [Test]
+ public void DummyTest()
+ {
+ Assert.Pass();
+ }
+}
\ No newline at end of file
diff --git a/Issue1713/GlobalUsings.cs b/Issue1713/GlobalUsings.cs
new file mode 100644
index 0000000..cefced4
--- /dev/null
+++ b/Issue1713/GlobalUsings.cs
@@ -0,0 +1 @@
+global using NUnit.Framework;
\ No newline at end of file
diff --git a/Issue1713/Issue1713.csproj b/Issue1713/Issue1713.csproj
new file mode 100644
index 0000000..c8fa68e
--- /dev/null
+++ b/Issue1713/Issue1713.csproj
@@ -0,0 +1,20 @@
+
+
+
+ net6.0
+ enable
+ enable
+
+ false
+ true
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Issue1713/Issue1713.sln b/Issue1713/Issue1713.sln
new file mode 100644
index 0000000..96edf54
--- /dev/null
+++ b/Issue1713/Issue1713.sln
@@ -0,0 +1,30 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.8.34309.116
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Issue1713", "Issue1713.csproj", "{2F31D341-BEF5-4D70-A133-B2EEBD279D62}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{0DFD5A77-FA9B-4CDC-8984-0CF8C0C0BAA1}"
+ ProjectSection(SolutionItems) = preProject
+ .runsettings = .runsettings
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {2F31D341-BEF5-4D70-A133-B2EEBD279D62}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2F31D341-BEF5-4D70-A133-B2EEBD279D62}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2F31D341-BEF5-4D70-A133-B2EEBD279D62}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2F31D341-BEF5-4D70-A133-B2EEBD279D62}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {B18C0E6D-6AEC-452B-86F2-E3151CF2AC74}
+ EndGlobalSection
+EndGlobal
diff --git a/Issue1713/README.md b/Issue1713/README.md
new file mode 100644
index 0000000..2878af1
--- /dev/null
+++ b/Issue1713/README.md
@@ -0,0 +1 @@
+See [Issue 1713](https://github.com/nunit/nunit/issues/1713) and [comment there](https://github.com/nunit/nunit/issues/1713#issuecomment-1817866573) for details.
\ No newline at end of file
diff --git a/Issue1713/Setup.cs b/Issue1713/Setup.cs
new file mode 100644
index 0000000..9674ebe
--- /dev/null
+++ b/Issue1713/Setup.cs
@@ -0,0 +1,12 @@
+
+namespace Issue1713;
+
+[SetUpFixture]
+public class AssemblySetUpAndTearDown
+{
+ [OneTimeSetUp]
+ public void AssemblyInitialize()
+ {
+ throw new Exception("Didnt expect this to throw");
+ }
+}
diff --git a/Issue1713/UnitTest1.cs b/Issue1713/UnitTest1.cs
new file mode 100644
index 0000000..6ddbabd
--- /dev/null
+++ b/Issue1713/UnitTest1.cs
@@ -0,0 +1,11 @@
+namespace Issue1713;
+
+public class Tests
+{
+ //[Test,Category("OhNo")]
+ [Test,Explicit]
+ public void Test1()
+ {
+ Assert.Pass();
+ }
+}
\ No newline at end of file
diff --git a/Issue4491/Issue4491.csproj b/Issue4491/Issue4491.csproj
index d25582b..0887bcb 100644
--- a/Issue4491/Issue4491.csproj
+++ b/Issue4491/Issue4491.csproj
@@ -9,6 +9,14 @@
true
+
+ 9999
+
+
+
+ 9999
+
+
diff --git a/Issue4491/UnitTest1.cs b/Issue4491/UnitTest1.cs
index ce285b6..669e0bd 100644
--- a/Issue4491/UnitTest1.cs
+++ b/Issue4491/UnitTest1.cs
@@ -19,6 +19,7 @@ public void Test2()
TestContext.WriteLine(TestContext.CurrentContext.Test.ID);
}
+
[Test]
public void Test3()
{
diff --git a/Issue4491B/.runsettings b/Issue4491B/.runsettings
new file mode 100644
index 0000000..7560a86
--- /dev/null
+++ b/Issue4491B/.runsettings
@@ -0,0 +1,144 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ .\TestResults
+
+
+ 0
+
+
+
+ 10000
+
+
+ false
+
+
+
+
+
+ false
+ false
+ true
+
+
+ 10
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+ true
+ true
+ true
+ true
+ false
+ false
+
+
+
+
+ false
+
+
+
+
+
+
+
+
+ 0
+
+ Off
+
+ -1
+ 0
+
+
+
+
+ false
+ true
+ false
+
+
+
+ 1
+ true
+ false
+ false
+ Skipped
+
+ Name
+
+ :
+ Current
+
+ 2000
+ true
+ true
+ Strict
+ false
+
+
+
+
diff --git a/Issue4491B/GlobalUsings.cs b/Issue4491B/GlobalUsings.cs
new file mode 100644
index 0000000..cefced4
--- /dev/null
+++ b/Issue4491B/GlobalUsings.cs
@@ -0,0 +1 @@
+global using NUnit.Framework;
\ No newline at end of file
diff --git a/Issue4491B/Issue4491B.csproj b/Issue4491B/Issue4491B.csproj
new file mode 100644
index 0000000..104c0a1
--- /dev/null
+++ b/Issue4491B/Issue4491B.csproj
@@ -0,0 +1,20 @@
+
+
+
+ net7.0
+ enable
+ enable
+
+ false
+ true
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Issue4491B/Issue4491B.sln b/Issue4491B/Issue4491B.sln
new file mode 100644
index 0000000..7c7dd9f
--- /dev/null
+++ b/Issue4491B/Issue4491B.sln
@@ -0,0 +1,30 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.7.34202.233
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Issue4491B", "Issue4491B.csproj", "{0FA2A757-FCDC-45E3-A09B-B9D7BC1FA35C}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{D448E638-BD3C-4F5C-B808-D8029BBF9B5D}"
+ ProjectSection(SolutionItems) = preProject
+ .runsettings = .runsettings
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {0FA2A757-FCDC-45E3-A09B-B9D7BC1FA35C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {0FA2A757-FCDC-45E3-A09B-B9D7BC1FA35C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {0FA2A757-FCDC-45E3-A09B-B9D7BC1FA35C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {0FA2A757-FCDC-45E3-A09B-B9D7BC1FA35C}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {B2387999-C6D2-4AC8-89BB-D7669425621D}
+ EndGlobalSection
+EndGlobal
diff --git a/Issue4491B/UnitTest1.cs b/Issue4491B/UnitTest1.cs
new file mode 100644
index 0000000..75efc77
--- /dev/null
+++ b/Issue4491B/UnitTest1.cs
@@ -0,0 +1,31 @@
+namespace Issue4491B;
+
+public class Tests
+{
+ [SetUp]
+ public void Setup()
+ {
+ }
+
+ [Test]
+ [Repeat(10)]
+ public void Test0()
+ {
+ Thread.Sleep(100);
+ TestContext.WriteLine($"Test1 repeatcount: {TestContext.CurrentContext.CurrentRepeatCount}");
+ Assert.Pass();
+ }
+
+
+ [Test]
+ [Repeat(6)]
+ public void Test1()
+ {
+ if (TestContext.CurrentContext.CurrentRepeatCount == 3)
+ {
+ Assert.Fail();
+ }
+ TestContext.WriteLine($"Test1 repeatcount: {TestContext.CurrentContext.CurrentRepeatCount}");
+ Assert.Pass();
+ }
+}
\ No newline at end of file
diff --git a/Issue4537/GlobalUsings.cs b/Issue4537/GlobalUsings.cs
new file mode 100644
index 0000000..cefced4
--- /dev/null
+++ b/Issue4537/GlobalUsings.cs
@@ -0,0 +1 @@
+global using NUnit.Framework;
\ No newline at end of file
diff --git a/Issue4537/Issue4537.csproj b/Issue4537/Issue4537.csproj
new file mode 100644
index 0000000..498eab5
--- /dev/null
+++ b/Issue4537/Issue4537.csproj
@@ -0,0 +1,20 @@
+
+
+
+ net6.0
+ enable
+ enable
+
+ false
+ true
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Issue4537/Issue4537.sln b/Issue4537/Issue4537.sln
new file mode 100644
index 0000000..3ecb26e
--- /dev/null
+++ b/Issue4537/Issue4537.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.7.34202.233
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Issue4537", "Issue4537.csproj", "{129A41E7-837A-4DDC-90A5-380F4427DB1E}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {129A41E7-837A-4DDC-90A5-380F4427DB1E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {129A41E7-837A-4DDC-90A5-380F4427DB1E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {129A41E7-837A-4DDC-90A5-380F4427DB1E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {129A41E7-837A-4DDC-90A5-380F4427DB1E}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {94AF1FC5-A2FC-42F4-ACB1-AD671123C7D5}
+ EndGlobalSection
+EndGlobal
diff --git a/Issue4537/UnitTest1.cs b/Issue4537/UnitTest1.cs
new file mode 100644
index 0000000..1d5c321
--- /dev/null
+++ b/Issue4537/UnitTest1.cs
@@ -0,0 +1,44 @@
+using NUnit.Framework.Legacy;
+
+namespace Issue4537;
+
+public class TearDownTests
+{
+ [Test]
+ public void Assertion()
+ {
+ ClassicAssert.IsTrue(false);
+ }
+
+ [Test]
+ public void Exception()
+ {
+ throw new Exception("Test exception");
+ }
+
+ [Test]
+ public void Pass()
+ {
+
+ }
+
+ [Test]
+ public void ExceptionInMultiple()
+ {
+ Assert.Multiple(()=>
+ {
+ Assert.That(1, Is.EqualTo(2));
+ throw new Exception("Test exception");
+ Assert.That(1, Is.EqualTo(3));
+ Assert.That(1, Is.EqualTo(4));
+ });
+
+ }
+
+
+ [TearDown]
+ public void TearDown()
+ {
+ Assert.Warn("Warning");
+ }
+}
\ No newline at end of file