diff --git a/.github/actions/execute-pipeline/action.yml b/.github/actions/execute-pipeline/action.yml
index 55e4893bc4..50c32f7793 100644
--- a/.github/actions/execute-pipeline/action.yml
+++ b/.github/actions/execute-pipeline/action.yml
@@ -23,7 +23,7 @@ inputs:
netversion:
description: 'Net version'
required: false
- default: 'net9.0'
+ default: 'net10.0'
runs:
using: "composite"
diff --git a/Directory.Build.props b/Directory.Build.props
index a351596691..3a10242347 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -69,4 +69,16 @@
-
+
+ true
+
+
+
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
+
+
\ No newline at end of file
diff --git a/Directory.Packages.props b/Directory.Packages.props
index 60ebed43a2..f771af1524 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -59,7 +59,7 @@
-
+
diff --git a/Polyfill.targets b/Polyfill.targets
index 27f0006759..ca88149295 100644
--- a/Polyfill.targets
+++ b/Polyfill.targets
@@ -1,14 +1,6 @@
-
- true
-
-
-
-
- all
- runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
+
+
diff --git a/Roslyn.props b/Roslyn.props
index 24cdff7c9e..9a3940c423 100644
--- a/Roslyn.props
+++ b/Roslyn.props
@@ -1,16 +1,9 @@
-
-
- true
-
+
-
- all
- runtime; build; native; contentfiles; analyzers; buildtransitive
-
diff --git a/TUnit.Assertions.SourceGenerator.Tests/TestsBase.cs b/TUnit.Assertions.SourceGenerator.Tests/TestsBase.cs
index eddc6c2fda..10df29a364 100644
--- a/TUnit.Assertions.SourceGenerator.Tests/TestsBase.cs
+++ b/TUnit.Assertions.SourceGenerator.Tests/TestsBase.cs
@@ -37,7 +37,7 @@ public Task RunTest(string inputFile, Func assertions)
public async Task RunTest(string inputFile, RunTestOptions runTestOptions, Func assertions)
{
#if NET
- var source = await FilePolyfill.ReadAllTextAsync(inputFile);
+ var source = await File.ReadAllTextAsync(inputFile);
#else
var source = File.ReadAllText(inputFile);
#endif
@@ -80,7 +80,7 @@ namespace System.Diagnostics.CodeAnalysis;
public class UnconditionalSuppressMessageAttribute : Attribute;
""",
#if NET
- ..await Task.WhenAll(runTestOptions.AdditionalFiles.Select(x => FilePolyfill.ReadAllTextAsync(x))),
+ ..await Task.WhenAll(runTestOptions.AdditionalFiles.Select(x => File.ReadAllTextAsync(x))),
#else
..runTestOptions.AdditionalFiles.Select(x => File.ReadAllText(x)),
#endif
@@ -160,8 +160,8 @@ Have you added required references and additional files?
verifyTask = verifyTask.OnVerifyMismatch(async (pair, message, verify) =>
{
- var received = await FilePolyfill.ReadAllTextAsync(pair.ReceivedPath);
- var verified = await FilePolyfill.ReadAllTextAsync(pair.VerifiedPath);
+ var received = await File.ReadAllTextAsync(pair.ReceivedPath);
+ var verified = await File.ReadAllTextAsync(pair.VerifiedPath);
// Better diff message since original one is too large
await Assert.That(Scrub(received)).IsEqualTo(Scrub(verified));
diff --git a/TUnit.Core.SourceGenerator.Tests/GenericTypeResolverTests.cs b/TUnit.Core.SourceGenerator.Tests/GenericTypeResolverTests.cs
index c074eb0d5f..40b105d8fe 100644
--- a/TUnit.Core.SourceGenerator.Tests/GenericTypeResolverTests.cs
+++ b/TUnit.Core.SourceGenerator.Tests/GenericTypeResolverTests.cs
@@ -148,7 +148,7 @@ public void TestMethod()
private async Task RunTestWithInlineSource(string source)
{
var tempFile = Path.GetTempFileName() + ".cs";
- await FilePolyfill.WriteAllTextAsync(tempFile, source);
+ await File.WriteAllTextAsync(tempFile, source);
try
{
diff --git a/TUnit.Core.SourceGenerator.Tests/TestsBase.cs b/TUnit.Core.SourceGenerator.Tests/TestsBase.cs
index 161a01beed..98e003ad13 100644
--- a/TUnit.Core.SourceGenerator.Tests/TestsBase.cs
+++ b/TUnit.Core.SourceGenerator.Tests/TestsBase.cs
@@ -43,7 +43,7 @@ public Task RunTest(string inputFile, Func assertions)
public async Task RunTest(string inputFile, RunTestOptions runTestOptions, Func assertions)
{
#if NET
- var source = await FilePolyfill.ReadAllTextAsync(inputFile);
+ var source = await File.ReadAllTextAsync(inputFile);
#else
var source = File.ReadAllText(inputFile);
#endif
@@ -86,7 +86,7 @@ namespace System.Diagnostics.CodeAnalysis;
public class UnconditionalSuppressMessageAttribute : Attribute;
""",
#if NET
- ..await Task.WhenAll(runTestOptions.AdditionalFiles.Select(x => FilePolyfill.ReadAllTextAsync(x))),
+ ..await Task.WhenAll(runTestOptions.AdditionalFiles.Select(x => File.ReadAllTextAsync(x))),
#else
..runTestOptions.AdditionalFiles.Select(x => File.ReadAllText(x)),
#endif
@@ -172,8 +172,8 @@ Have you added required references and additional files?
{
verifyTask = verifyTask.OnVerifyMismatch(async (pair, message, verify) =>
{
- var received = await FilePolyfill.ReadAllTextAsync(pair.ReceivedPath);
- var verified = await FilePolyfill.ReadAllTextAsync(pair.VerifiedPath);
+ var received = await File.ReadAllTextAsync(pair.ReceivedPath);
+ var verified = await File.ReadAllTextAsync(pair.VerifiedPath);
// Better diff message since original one is too large
await Assert.That(Scrub(received)).IsEqualTo(Scrub(verified));
diff --git a/TUnit.Core.SourceGenerator.Tests/UnifiedReflectionFreeTests.cs b/TUnit.Core.SourceGenerator.Tests/UnifiedReflectionFreeTests.cs
index 3a039c557d..6182181767 100644
--- a/TUnit.Core.SourceGenerator.Tests/UnifiedReflectionFreeTests.cs
+++ b/TUnit.Core.SourceGenerator.Tests/UnifiedReflectionFreeTests.cs
@@ -95,7 +95,7 @@ public void TestWithConfiguration()
private async Task RunTestWithInlineSource(string source)
{
var tempFile = Path.GetTempFileName() + ".cs";
- await FilePolyfill.WriteAllTextAsync(tempFile, source);
+ await File.WriteAllTextAsync(tempFile, source);
try
{
diff --git a/TUnit.Core.SourceGenerator.Tests/Verify.cs b/TUnit.Core.SourceGenerator.Tests/Verify.cs
index d1db167879..d15b2ac87a 100644
--- a/TUnit.Core.SourceGenerator.Tests/Verify.cs
+++ b/TUnit.Core.SourceGenerator.Tests/Verify.cs
@@ -157,15 +157,15 @@ public async Task ToTask()
if (!File.Exists(_verifiedPath))
{
- await FilePolyfill.WriteAllTextAsync(_receivedPath, NormalizeNewline(final));
+ await File.WriteAllTextAsync(_receivedPath, NormalizeNewline(final));
throw new InvalidOperationException($"No verified file found for '{name}'.");
}
- var approved = await FilePolyfill.ReadAllTextAsync(_verifiedPath);
+ var approved = await File.ReadAllTextAsync(_verifiedPath);
if (!string.Equals(NormalizeNewline(final), NormalizeNewline(approved), StringComparison.Ordinal))
{
- await FilePolyfill.WriteAllTextAsync(_receivedPath, NormalizeNewline(final));
+ await File.WriteAllTextAsync(_receivedPath, NormalizeNewline(final));
if (_onVerifyMismatch != null)
{
diff --git a/TUnit.Engine.Tests/Attributes/SkipNetFrameworkAttribute.cs b/TUnit.Engine.Tests/Attributes/SkipNetFrameworkAttribute.cs
index 8ad1fb4e2b..b8205c3ad6 100644
--- a/TUnit.Engine.Tests/Attributes/SkipNetFrameworkAttribute.cs
+++ b/TUnit.Engine.Tests/Attributes/SkipNetFrameworkAttribute.cs
@@ -2,7 +2,7 @@
public class SkipNetFrameworkAttribute(string reason) : SkipAttribute(reason)
{
- private static readonly string NetVersion = Environment.GetEnvironmentVariable("NET_VERSION") ?? "net9.0";
+ private static readonly string NetVersion = Environment.GetEnvironmentVariable("NET_VERSION") ?? "net10.0";
public override Task ShouldSkip(TestRegisteredContext testRegisteredContext)
{
diff --git a/TUnit.Engine.Tests/InvokableTestBase.cs b/TUnit.Engine.Tests/InvokableTestBase.cs
index bc20a0e4a1..1e264449bc 100644
--- a/TUnit.Engine.Tests/InvokableTestBase.cs
+++ b/TUnit.Engine.Tests/InvokableTestBase.cs
@@ -22,7 +22,7 @@ public static IEnumerable GetTestModes()
}
}
- private static readonly string GetEnvironmentVariable = Environment.GetEnvironmentVariable("NET_VERSION") ?? "net9.0";
+ private static readonly string GetEnvironmentVariable = Environment.GetEnvironmentVariable("NET_VERSION") ?? "net10.0";
public static bool IsNetFramework => GetEnvironmentVariable.StartsWith("net4");
diff --git a/TUnit.Pipeline/Modules/Abstract/TestBaseModule.cs b/TUnit.Pipeline/Modules/Abstract/TestBaseModule.cs
index 0943197e35..481e4167a3 100644
--- a/TUnit.Pipeline/Modules/Abstract/TestBaseModule.cs
+++ b/TUnit.Pipeline/Modules/Abstract/TestBaseModule.cs
@@ -14,7 +14,7 @@ protected virtual IEnumerable TestableFrameworks
{
get
{
- yield return "net9.0";
+ yield return "net10.0";
yield return "net8.0";
if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
diff --git a/TUnit.Pipeline/Modules/PublishNugetTesterAOTModule.cs b/TUnit.Pipeline/Modules/PublishNugetTesterAOTModule.cs
index 5bbb404429..b15f0e8a03 100644
--- a/TUnit.Pipeline/Modules/PublishNugetTesterAOTModule.cs
+++ b/TUnit.Pipeline/Modules/PublishNugetTesterAOTModule.cs
@@ -32,8 +32,8 @@ protected override Task ShouldSkip(IPipelineContext context)
.FindFile(x => x.Name == "TUnit.NugetTester.csproj")
.AssertExists();
- // Test AOT publishing for net8.0 and net9.0
- foreach (var framework in new[] { "net8.0", "net9.0" })
+ // Test AOT publishing
+ foreach (var framework in new[] { "net8.0", "net9.0", "net10.0" })
{
var result = await SubModule($"AOT-{framework}", async () =>
{
diff --git a/TUnit.Pipeline/Modules/RunAspNetTestsModule.cs b/TUnit.Pipeline/Modules/RunAspNetTestsModule.cs
index ad5ed5103e..e6c974434a 100644
--- a/TUnit.Pipeline/Modules/RunAspNetTestsModule.cs
+++ b/TUnit.Pipeline/Modules/RunAspNetTestsModule.cs
@@ -22,7 +22,7 @@ public class RunAspNetTestsModule : Module
Project = project.Name,
NoBuild = true,
Configuration = Configuration.Release,
- Framework = "net9.0",
+ Framework = "net10.0",
WorkingDirectory = project.Folder!,
Arguments = ["--ignore-exit-code", "8", "--hangdump", "--hangdump-filename", "hangdump.aspnet-tests.dmp", "--hangdump-timeout", "5m"],
EnvironmentVariables = new Dictionary
diff --git a/TUnit.Pipeline/Modules/RunEngineTestsModule.cs b/TUnit.Pipeline/Modules/RunEngineTestsModule.cs
index 162ccaf06e..49a70177aa 100644
--- a/TUnit.Pipeline/Modules/RunEngineTestsModule.cs
+++ b/TUnit.Pipeline/Modules/RunEngineTestsModule.cs
@@ -33,7 +33,7 @@ public class RunEngineTestsModule : Module
Project = project.Name,
NoBuild = true,
Configuration = Configuration.Release,
- Framework = "net9.0",
+ Framework = "net10.0",
WorkingDirectory = project.Folder!,
Arguments = [
"--hangdump", "--hangdump-filename", $"hangdump.{Environment.OSVersion.Platform}.engine-tests.dmp", "--hangdump-timeout", "30m",
diff --git a/TUnit.Pipeline/Modules/RunTemplateTestsModule.cs b/TUnit.Pipeline/Modules/RunTemplateTestsModule.cs
index ad6f2384bd..6199c64f72 100644
--- a/TUnit.Pipeline/Modules/RunTemplateTestsModule.cs
+++ b/TUnit.Pipeline/Modules/RunTemplateTestsModule.cs
@@ -22,7 +22,7 @@ public class RunTemplateTestsModule : Module
WorkingDirectory = project.Folder!,
NoBuild = true,
Configuration = Configuration.Release,
- Framework = "net9.0",
+ Framework = "net10.0",
Arguments = ["--", "--hangdump", "--hangdump-filename", "hangdump.template-tests.dmp", "--hangdump-timeout", "5m"],
EnvironmentVariables = new Dictionary
{
diff --git a/TUnit.Pipeline/Modules/TestNugetPackageModule.cs b/TUnit.Pipeline/Modules/TestNugetPackageModule.cs
index 6ace295308..e9045d5c6e 100644
--- a/TUnit.Pipeline/Modules/TestNugetPackageModule.cs
+++ b/TUnit.Pipeline/Modules/TestNugetPackageModule.cs
@@ -37,7 +37,7 @@ protected override IEnumerable TestableFrameworks
{
get
{
- yield return "net9.0";
+ yield return "net10.0";
yield return "net8.0";
if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
diff --git a/TUnit.PublicAPI/Tests.cs b/TUnit.PublicAPI/Tests.cs
index 0aa7f2dff9..67830f80f0 100644
--- a/TUnit.PublicAPI/Tests.cs
+++ b/TUnit.PublicAPI/Tests.cs
@@ -51,8 +51,8 @@ await VerifyTUnit.Verify(publicApi)
.ScrubFilePaths()
.OnVerifyMismatch(async (pair, message, verify) =>
{
- var received = await FilePolyfill.ReadAllTextAsync(pair.ReceivedPath);
- var verified = await FilePolyfill.ReadAllTextAsync(pair.VerifiedPath);
+ var received = await File.ReadAllTextAsync(pair.ReceivedPath);
+ var verified = await File.ReadAllTextAsync(pair.VerifiedPath);
// Better diff message since original one is too large
await Assert.That(Scrub(received)).IsEqualTo(Scrub(verified));
diff --git a/TUnit.PublicAPI/Verify.cs b/TUnit.PublicAPI/Verify.cs
index d057db9a0b..5059fc603c 100644
--- a/TUnit.PublicAPI/Verify.cs
+++ b/TUnit.PublicAPI/Verify.cs
@@ -129,15 +129,15 @@ public async Task ToTask()
if (!File.Exists(_verifiedPath))
{
- await FilePolyfill.WriteAllTextAsync(_receivedPath, NormalizeNewline(final));
+ await File.WriteAllTextAsync(_receivedPath, NormalizeNewline(final));
throw new InvalidOperationException($"No verified file found for '{name}'.");
}
- var approved = await FilePolyfill.ReadAllTextAsync(_verifiedPath);
+ var approved = await File.ReadAllTextAsync(_verifiedPath);
if (!string.Equals(NormalizeNewline(final), NormalizeNewline(approved), StringComparison.Ordinal))
{
- await FilePolyfill.WriteAllTextAsync(_receivedPath, NormalizeNewline(final));
+ await File.WriteAllTextAsync(_receivedPath, NormalizeNewline(final));
if (_onVerifyMismatch != null)
{
diff --git a/TUnit.TestProject.Library/Polyfills/ModuleInitializerAttribute.cs b/TUnit.TestProject.Library/Polyfills/ModuleInitializerAttribute.cs
deleted file mode 100644
index 49cce8f4f0..0000000000
--- a/TUnit.TestProject.Library/Polyfills/ModuleInitializerAttribute.cs
+++ /dev/null
@@ -1,5 +0,0 @@
-// ReSharper disable once CheckNamespace
-namespace System.Runtime.CompilerServices;
-
-// ReSharper disable once RedundantExtendsListEntry
-sealed class ModuleInitializerAttribute : Attribute;
diff --git a/TUnit.TestProject/AfterTestAttributeTests.cs b/TUnit.TestProject/AfterTestAttributeTests.cs
index 47e9022801..4aba172d1d 100644
--- a/TUnit.TestProject/AfterTestAttributeTests.cs
+++ b/TUnit.TestProject/AfterTestAttributeTests.cs
@@ -19,7 +19,7 @@ public async ValueTask OnTestEnd(TestContext testContext)
{
Console.WriteLine(@"Writing file inside WriteFileAfterTestAttribute!");
- await FilePolyfill.WriteAllTextAsync(Filename, "Foo!");
+ await File.WriteAllTextAsync(Filename, "Foo!");
}
public int Order => 0;
diff --git a/TUnit.TestProject/AfterTests/TestDiscoveryAfterTests.cs b/TUnit.TestProject/AfterTests/TestDiscoveryAfterTests.cs
index 9a7b82e62a..1adac76180 100644
--- a/TUnit.TestProject/AfterTests/TestDiscoveryAfterTests.cs
+++ b/TUnit.TestProject/AfterTests/TestDiscoveryAfterTests.cs
@@ -11,7 +11,7 @@ public static async Task AfterTestDiscovery(TestDiscoveryContext context)
[AfterEvery(TestDiscovery)]
public static async Task AfterEveryTestDiscovery(TestDiscoveryContext context)
{
- await FilePolyfill.WriteAllTextAsync($"TestDiscoveryAfterTests{Guid.NewGuid():N}.txt", $"{context.AllTests.Count()} tests found");
+ await File.WriteAllTextAsync($"TestDiscoveryAfterTests{Guid.NewGuid():N}.txt", $"{context.AllTests.Count()} tests found");
var test = context.AllTests.FirstOrDefault(x =>
x.Metadata.TestDetails.TestName == nameof(TestDiscoveryAfterTests.EnsureAfterEveryTestDiscoveryHit));
diff --git a/TUnit.TestProject/AfterTests/TestSessionAfterTests.cs b/TUnit.TestProject/AfterTests/TestSessionAfterTests.cs
index 384c5f3ba2..34dc0788fb 100644
--- a/TUnit.TestProject/AfterTests/TestSessionAfterTests.cs
+++ b/TUnit.TestProject/AfterTests/TestSessionAfterTests.cs
@@ -11,7 +11,7 @@ public static async Task AfterTestSession(TestSessionContext context)
[AfterEvery(TestSession)]
public static async Task AfterEveryTestSession(TestSessionContext context)
{
- await FilePolyfill.WriteAllTextAsync($"TestSessionAfterTests{Guid.NewGuid():N}.txt", $"{context.AllTests.Count()} tests in session");
+ await File.WriteAllTextAsync($"TestSessionAfterTests{Guid.NewGuid():N}.txt", $"{context.AllTests.Count()} tests in session");
var test = context.AllTests.FirstOrDefault(x =>
x.Metadata.TestDetails.TestName == nameof(TestSessionAfterTests.PepareForAfterSession));
diff --git a/TUnit.TestProject/BeforeTests/TestDiscoveryBeforeTests.cs b/TUnit.TestProject/BeforeTests/TestDiscoveryBeforeTests.cs
index da3412f221..73b5060e00 100644
--- a/TUnit.TestProject/BeforeTests/TestDiscoveryBeforeTests.cs
+++ b/TUnit.TestProject/BeforeTests/TestDiscoveryBeforeTests.cs
@@ -11,7 +11,7 @@ public static async Task BeforeTestDiscovery(BeforeTestDiscoveryContext context)
[BeforeEvery(TestDiscovery)]
public static async Task BeforeEveryTestDiscovery(BeforeTestDiscoveryContext context)
{
- await FilePolyfill.WriteAllTextAsync($"TestDiscoveryBeforeTests{Guid.NewGuid():N}.txt", $"Blah!");
+ await File.WriteAllTextAsync($"TestDiscoveryBeforeTests{Guid.NewGuid():N}.txt", $"Blah!");
}
}
diff --git a/TUnit.TestProject/BeforeTests/TestSessionBeforeTests.cs b/TUnit.TestProject/BeforeTests/TestSessionBeforeTests.cs
index 8c443ef421..8baf92eadd 100644
--- a/TUnit.TestProject/BeforeTests/TestSessionBeforeTests.cs
+++ b/TUnit.TestProject/BeforeTests/TestSessionBeforeTests.cs
@@ -11,7 +11,7 @@ public static async Task BeforeTestSession(TestSessionContext context)
[BeforeEvery(TestSession)]
public static async Task BeforeEveryTestSession(TestSessionContext context)
{
- await FilePolyfill.WriteAllTextAsync($"TestSessionBeforeTests{Guid.NewGuid():N}.txt", $"{context.AllTests.Count()} tests in session");
+ await File.WriteAllTextAsync($"TestSessionBeforeTests{Guid.NewGuid():N}.txt", $"{context.AllTests.Count()} tests in session");
var test = context.AllTests.FirstOrDefault(x =>
x.Metadata.TestDetails.TestName == nameof(TestSessionBeforeTests.EnsureBeforeEveryTestSessionHit));