diff --git a/Directory.Packages.props b/Directory.Packages.props index b8d34f8894..7ecbd663fe 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -83,9 +83,9 @@ - - - + + + diff --git a/TUnit.Templates.Tests/Snapshots/InstantiationTest.TUnit._.verified/TUnit/Data/DataSourceGenerator.cs b/TUnit.Templates.Tests/Snapshots/InstantiationTest.TUnit._.verified/TUnit/Data/DataSourceGenerator.cs index 295ef434a1..b08733deec 100644 --- a/TUnit.Templates.Tests/Snapshots/InstantiationTest.TUnit._.verified/TUnit/Data/DataSourceGenerator.cs +++ b/TUnit.Templates.Tests/Snapshots/InstantiationTest.TUnit._.verified/TUnit/Data/DataSourceGenerator.cs @@ -2,7 +2,7 @@ public class DataGenerator : DataSourceGeneratorAttribute { - public override IEnumerable> GenerateDataSources(DataGeneratorMetadata dataGeneratorMetadata) + protected override IEnumerable> GenerateDataSources(DataGeneratorMetadata dataGeneratorMetadata) { yield return () => (1, 1, 2); yield return () => (1, 2, 3); diff --git a/TUnit.Templates.Tests/Snapshots/InstantiationTest.TUnit._.verified/TUnit/Data/DependencyInjectionClassConstructor.cs b/TUnit.Templates.Tests/Snapshots/InstantiationTest.TUnit._.verified/TUnit/Data/DependencyInjectionClassConstructor.cs index bc29653077..24043e34f5 100644 --- a/TUnit.Templates.Tests/Snapshots/InstantiationTest.TUnit._.verified/TUnit/Data/DependencyInjectionClassConstructor.cs +++ b/TUnit.Templates.Tests/Snapshots/InstantiationTest.TUnit._.verified/TUnit/Data/DependencyInjectionClassConstructor.cs @@ -4,13 +4,13 @@ namespace TUnit; public class DependencyInjectionClassConstructor : IClassConstructor { - public object Create(Type type, ClassConstructorMetadata classConstructorMetadata) + public Task Create(Type type, ClassConstructorMetadata classConstructorMetadata) { Console.WriteLine(@"You can also control how your test classes are new'd up, giving you lots of power and the ability to utilise tools such as dependency injection"); if (type == typeof(AndEvenMoreTests)) { - return new AndEvenMoreTests(new DataClass()); + return Task.FromResult(new AndEvenMoreTests(new DataClass())); } throw new NotImplementedException(); diff --git a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.AspNet.FSharp._.verified/TUnit.AspNet.FSharp/TUnit.AspNet.FSharp/Tests.fs b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.AspNet.FSharp._.verified/TUnit.AspNet.FSharp/TUnit.AspNet.FSharp/Tests.fs index efd111a518..ddc59ffecb 100644 --- a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.AspNet.FSharp._.verified/TUnit.AspNet.FSharp/TUnit.AspNet.FSharp/Tests.fs +++ b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.AspNet.FSharp._.verified/TUnit.AspNet.FSharp/TUnit.AspNet.FSharp/Tests.fs @@ -10,7 +10,7 @@ open TUnit.Assertions.Extensions type Tests() = - [, Shared = SharedType.PerTestSession)>] + [, Shared = [|SharedType.PerTestSession|])>] member val public WebApplicationFactory: WebApplicationFactory = Unchecked.defaultof with get, set [] diff --git a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Data/DependencyInjectionClassConstructor.fs b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Data/DependencyInjectionClassConstructor.fs index 7234fc5724..6f91af3d2f 100644 --- a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Data/DependencyInjectionClassConstructor.fs +++ b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Data/DependencyInjectionClassConstructor.fs @@ -13,6 +13,6 @@ type DependencyInjectionClassConstructor() = .BuildServiceProvider() interface IClassConstructor with - member _.Create(typ: Type, _: ClassConstructorMetadata) : obj = + member _.Create(typ: Type, _: ClassConstructorMetadata) : Threading.Tasks.Task = Console.WriteLine("You can also control how your test classes are new'd up, giving you lots of power and the ability to utilise tools such as dependency injection") - ActivatorUtilities.GetServiceOrCreateInstance(serviceProvider, typ) \ No newline at end of file + Threading.Tasks.Task.FromResult(ActivatorUtilities.GetServiceOrCreateInstance(serviceProvider, typ)) \ No newline at end of file diff --git a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Tests.fs b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Tests.fs index 67a19d22ad..9648d247bf 100644 --- a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Tests.fs +++ b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Tests.fs @@ -38,9 +38,9 @@ type Tests() = [] [)>] - [, Shared = SharedType.PerClass)>] - [, Shared = SharedType.PerAssembly)>] - [, Shared = SharedType.PerTestSession)>] + [, Shared = [|SharedType.PerClass|])>] + [, Shared = [|SharedType.PerAssembly|])>] + [, Shared = [|SharedType.PerTestSession|])>] member _.ClassDataSource(dataClass: DataClass) = Console.WriteLine("This test can accept a class, which can also be pre-initialised before being injected in") Console.WriteLine("These can also be shared among other tests, or new'd up each time, by using the `Shared` property on the attribute") diff --git a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Tests2.fs b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Tests2.fs index 73fc85bf88..b43a16f2b3 100644 --- a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Tests2.fs +++ b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithFSharp.TUnit.FSharp._.verified/TUnit.FSharp/Tests2.fs @@ -12,7 +12,7 @@ type MoreTests(title: string) = Console.WriteLine(title) Console.WriteLine("Did I forget that data injection works on classes too?") - [, Shared = SharedType.PerTestSession)>] + [, Shared = [|SharedType.PerTestSession|])>] member val DataClass: DataClass = Unchecked.defaultof<_> with get, set [] diff --git a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Data/DataGenerator.vb b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Data/DataGenerator.vb index 894171ee1d..1b8e3137d1 100644 --- a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Data/DataGenerator.vb +++ b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Data/DataGenerator.vb @@ -6,7 +6,7 @@ Namespace Data Public Class DataGenerator Inherits DataSourceGeneratorAttribute(Of Integer, Integer, Integer) - Public Overrides Iterator Function GenerateDataSources(dataGeneratorMetadata As DataGeneratorMetadata) As IEnumerable(Of Func(Of (Integer, Integer, Integer))) + Protected Overrides Iterator Function GenerateDataSources(dataGeneratorMetadata As DataGeneratorMetadata) As IEnumerable(Of Func(Of (Integer, Integer, Integer))) Yield Function() (1, 1, 2) Yield Function() (1, 2, 3) Yield Function() (4, 5, 9) diff --git a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Data/DependencyInjectionClassConstructor.vb b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Data/DependencyInjectionClassConstructor.vb index bb8177faa6..5c8e4d486c 100644 --- a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Data/DependencyInjectionClassConstructor.vb +++ b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Data/DependencyInjectionClassConstructor.vb @@ -15,9 +15,9 @@ Public Class DependencyInjectionClassConstructor End Function ' Explicit interface implementation for IClassConstructor.Create(Type, ClassConstructorMetadata) - Private Function IClassConstructor_Create(type As Type, classConstructorMetadata As ClassConstructorMetadata) As Object Implements IClassConstructor.Create + Private Function IClassConstructor_Create(type As Type, classConstructorMetadata As ClassConstructorMetadata) As Task(Of Object) Implements IClassConstructor.Create If type Is GetType(AndEvenMoreTests) Then - Return New AndEvenMoreTests(New DataClass()) + Return Task.FromResult(Of Object)(New AndEvenMoreTests(New DataClass())) End If Throw New NotImplementedException() diff --git a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Tests2.vb b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Tests2.vb index ae6aad99e2..d7625f1f37 100644 --- a/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Tests2.vb +++ b/TUnit.Templates.Tests/Snapshots/InstantiationTestWithVB.TUnit.VB._.verified/TUnit.VB/Tests2.vb @@ -16,7 +16,7 @@ Public Class MoreTests Console.WriteLine("Did I forget that data injection works on classes too?") End Sub - + Public Property DataClass As DataClass diff --git a/TUnit.Templates/content/TUnit.AspNet.FSharp/TestProject/TestProject.fsproj b/TUnit.Templates/content/TUnit.AspNet.FSharp/TestProject/TestProject.fsproj index b85da61db2..bd60eb278b 100644 --- a/TUnit.Templates/content/TUnit.AspNet.FSharp/TestProject/TestProject.fsproj +++ b/TUnit.Templates/content/TUnit.AspNet.FSharp/TestProject/TestProject.fsproj @@ -10,8 +10,8 @@ - - + + diff --git a/TUnit.Templates/content/TUnit.AspNet.FSharp/TestProject/Tests.fs b/TUnit.Templates/content/TUnit.AspNet.FSharp/TestProject/Tests.fs index bf772cf222..e2bf591894 100644 --- a/TUnit.Templates/content/TUnit.AspNet.FSharp/TestProject/Tests.fs +++ b/TUnit.Templates/content/TUnit.AspNet.FSharp/TestProject/Tests.fs @@ -10,7 +10,7 @@ open TUnit.Assertions.Extensions type Tests() = - [, Shared = SharedType.PerTestSession)>] + [, Shared = [|SharedType.PerTestSession|])>] member val public WebApplicationFactory: WebApplicationFactory = Unchecked.defaultof with get, set [] diff --git a/TUnit.Templates/content/TUnit.AspNet/TestProject/TestProject.csproj b/TUnit.Templates/content/TUnit.AspNet/TestProject/TestProject.csproj index aaebe60e7c..ae9bc865d2 100644 --- a/TUnit.Templates/content/TUnit.AspNet/TestProject/TestProject.csproj +++ b/TUnit.Templates/content/TUnit.AspNet/TestProject/TestProject.csproj @@ -9,7 +9,7 @@ - + diff --git a/TUnit.Templates/content/TUnit.Aspire.Starter/ExampleNamespace.TestProject/ExampleNamespace.TestProject.csproj b/TUnit.Templates/content/TUnit.Aspire.Starter/ExampleNamespace.TestProject/ExampleNamespace.TestProject.csproj index 31a6405ae5..2790dfc4d6 100644 --- a/TUnit.Templates/content/TUnit.Aspire.Starter/ExampleNamespace.TestProject/ExampleNamespace.TestProject.csproj +++ b/TUnit.Templates/content/TUnit.Aspire.Starter/ExampleNamespace.TestProject/ExampleNamespace.TestProject.csproj @@ -11,7 +11,7 @@ - + diff --git a/TUnit.Templates/content/TUnit.Aspire.Test/ExampleNamespace.csproj b/TUnit.Templates/content/TUnit.Aspire.Test/ExampleNamespace.csproj index 4aa37579fa..ec0953297f 100644 --- a/TUnit.Templates/content/TUnit.Aspire.Test/ExampleNamespace.csproj +++ b/TUnit.Templates/content/TUnit.Aspire.Test/ExampleNamespace.csproj @@ -10,7 +10,7 @@ - + diff --git a/TUnit.Templates/content/TUnit.FSharp/Data/DependencyInjectionClassConstructor.fs b/TUnit.Templates/content/TUnit.FSharp/Data/DependencyInjectionClassConstructor.fs index 253222f14d..3b9b38462a 100644 --- a/TUnit.Templates/content/TUnit.FSharp/Data/DependencyInjectionClassConstructor.fs +++ b/TUnit.Templates/content/TUnit.FSharp/Data/DependencyInjectionClassConstructor.fs @@ -13,6 +13,6 @@ type DependencyInjectionClassConstructor() = .BuildServiceProvider() interface IClassConstructor with - member _.Create(typ: Type, _: ClassConstructorMetadata) : obj = + member _.Create(typ: Type, _: ClassConstructorMetadata) : Threading.Tasks.Task = Console.WriteLine("You can also control how your test classes are new'd up, giving you lots of power and the ability to utilise tools such as dependency injection") - ActivatorUtilities.GetServiceOrCreateInstance(serviceProvider, typ) \ No newline at end of file + Threading.Tasks.Task.FromResult(ActivatorUtilities.GetServiceOrCreateInstance(serviceProvider, typ)) \ No newline at end of file diff --git a/TUnit.Templates/content/TUnit.FSharp/TestProject.fsproj b/TUnit.Templates/content/TUnit.FSharp/TestProject.fsproj index fd1cf566c3..3203a84796 100644 --- a/TUnit.Templates/content/TUnit.FSharp/TestProject.fsproj +++ b/TUnit.Templates/content/TUnit.FSharp/TestProject.fsproj @@ -10,8 +10,8 @@ - - + + diff --git a/TUnit.Templates/content/TUnit.FSharp/Tests.fs b/TUnit.Templates/content/TUnit.FSharp/Tests.fs index 82d2e7faae..2777b77cbb 100644 --- a/TUnit.Templates/content/TUnit.FSharp/Tests.fs +++ b/TUnit.Templates/content/TUnit.FSharp/Tests.fs @@ -38,9 +38,9 @@ type Tests() = [] [)>] - [, Shared = SharedType.PerClass)>] - [, Shared = SharedType.PerAssembly)>] - [, Shared = SharedType.PerTestSession)>] + [, Shared = [|SharedType.PerClass|])>] + [, Shared = [|SharedType.PerAssembly|])>] + [, Shared = [|SharedType.PerTestSession|])>] member _.ClassDataSource(dataClass: DataClass) = Console.WriteLine("This test can accept a class, which can also be pre-initialised before being injected in") Console.WriteLine("These can also be shared among other tests, or new'd up each time, by using the `Shared` property on the attribute") diff --git a/TUnit.Templates/content/TUnit.FSharp/Tests2.fs b/TUnit.Templates/content/TUnit.FSharp/Tests2.fs index b95d32965e..b0d62c42c0 100644 --- a/TUnit.Templates/content/TUnit.FSharp/Tests2.fs +++ b/TUnit.Templates/content/TUnit.FSharp/Tests2.fs @@ -12,7 +12,7 @@ type MoreTests(title: string) = Console.WriteLine(title) Console.WriteLine("Did I forget that data injection works on classes too?") - [, Shared = SharedType.PerTestSession)>] + [, Shared = [|SharedType.PerTestSession|])>] member val DataClass: DataClass = Unchecked.defaultof<_> with get, set [] diff --git a/TUnit.Templates/content/TUnit.Playwright/TestProject.csproj b/TUnit.Templates/content/TUnit.Playwright/TestProject.csproj index b667cb64af..7f72dbc506 100644 --- a/TUnit.Templates/content/TUnit.Playwright/TestProject.csproj +++ b/TUnit.Templates/content/TUnit.Playwright/TestProject.csproj @@ -8,7 +8,7 @@ - + diff --git a/TUnit.Templates/content/TUnit.VB/Data/DataGenerator.vb b/TUnit.Templates/content/TUnit.VB/Data/DataGenerator.vb index 894171ee1d..1b8e3137d1 100644 --- a/TUnit.Templates/content/TUnit.VB/Data/DataGenerator.vb +++ b/TUnit.Templates/content/TUnit.VB/Data/DataGenerator.vb @@ -6,7 +6,7 @@ Namespace Data Public Class DataGenerator Inherits DataSourceGeneratorAttribute(Of Integer, Integer, Integer) - Public Overrides Iterator Function GenerateDataSources(dataGeneratorMetadata As DataGeneratorMetadata) As IEnumerable(Of Func(Of (Integer, Integer, Integer))) + Protected Overrides Iterator Function GenerateDataSources(dataGeneratorMetadata As DataGeneratorMetadata) As IEnumerable(Of Func(Of (Integer, Integer, Integer))) Yield Function() (1, 1, 2) Yield Function() (1, 2, 3) Yield Function() (4, 5, 9) diff --git a/TUnit.Templates/content/TUnit.VB/Data/DependencyInjectionClassConstructor.vb b/TUnit.Templates/content/TUnit.VB/Data/DependencyInjectionClassConstructor.vb index bb8177faa6..5c8e4d486c 100644 --- a/TUnit.Templates/content/TUnit.VB/Data/DependencyInjectionClassConstructor.vb +++ b/TUnit.Templates/content/TUnit.VB/Data/DependencyInjectionClassConstructor.vb @@ -15,9 +15,9 @@ Public Class DependencyInjectionClassConstructor End Function ' Explicit interface implementation for IClassConstructor.Create(Type, ClassConstructorMetadata) - Private Function IClassConstructor_Create(type As Type, classConstructorMetadata As ClassConstructorMetadata) As Object Implements IClassConstructor.Create + Private Function IClassConstructor_Create(type As Type, classConstructorMetadata As ClassConstructorMetadata) As Task(Of Object) Implements IClassConstructor.Create If type Is GetType(AndEvenMoreTests) Then - Return New AndEvenMoreTests(New DataClass()) + Return Task.FromResult(Of Object)(New AndEvenMoreTests(New DataClass())) End If Throw New NotImplementedException() diff --git a/TUnit.Templates/content/TUnit.VB/TestProject.vbproj b/TUnit.Templates/content/TUnit.VB/TestProject.vbproj index 52fbf97ca9..47b4e8a146 100644 --- a/TUnit.Templates/content/TUnit.VB/TestProject.vbproj +++ b/TUnit.Templates/content/TUnit.VB/TestProject.vbproj @@ -8,6 +8,6 @@ - + diff --git a/TUnit.Templates/content/TUnit.VB/Tests2.vb b/TUnit.Templates/content/TUnit.VB/Tests2.vb index ae6aad99e2..d7625f1f37 100644 --- a/TUnit.Templates/content/TUnit.VB/Tests2.vb +++ b/TUnit.Templates/content/TUnit.VB/Tests2.vb @@ -16,7 +16,7 @@ Public Class MoreTests Console.WriteLine("Did I forget that data injection works on classes too?") End Sub - + Public Property DataClass As DataClass diff --git a/TUnit.Templates/content/TUnit/Data/DataSourceGenerator.cs b/TUnit.Templates/content/TUnit/Data/DataSourceGenerator.cs index f7af0f583d..9c4e45baaa 100644 --- a/TUnit.Templates/content/TUnit/Data/DataSourceGenerator.cs +++ b/TUnit.Templates/content/TUnit/Data/DataSourceGenerator.cs @@ -2,7 +2,7 @@ public class DataGenerator : DataSourceGeneratorAttribute { - public override IEnumerable> GenerateDataSources(DataGeneratorMetadata dataGeneratorMetadata) + protected override IEnumerable> GenerateDataSources(DataGeneratorMetadata dataGeneratorMetadata) { yield return () => (1, 1, 2); yield return () => (1, 2, 3); diff --git a/TUnit.Templates/content/TUnit/Data/DependencyInjectionClassConstructor.cs b/TUnit.Templates/content/TUnit/Data/DependencyInjectionClassConstructor.cs index 84c2e0ec8f..8fc1ece42a 100644 --- a/TUnit.Templates/content/TUnit/Data/DependencyInjectionClassConstructor.cs +++ b/TUnit.Templates/content/TUnit/Data/DependencyInjectionClassConstructor.cs @@ -4,13 +4,13 @@ namespace TestProject; public class DependencyInjectionClassConstructor : IClassConstructor { - public object Create(Type type, ClassConstructorMetadata classConstructorMetadata) + public Task Create(Type type, ClassConstructorMetadata classConstructorMetadata) { Console.WriteLine(@"You can also control how your test classes are new'd up, giving you lots of power and the ability to utilise tools such as dependency injection"); if (type == typeof(AndEvenMoreTests)) { - return new AndEvenMoreTests(new DataClass()); + return Task.FromResult(new AndEvenMoreTests(new DataClass())); } throw new NotImplementedException(); diff --git a/TUnit.Templates/content/TUnit/TestProject.csproj b/TUnit.Templates/content/TUnit/TestProject.csproj index fef92e6f38..a6d3911277 100644 --- a/TUnit.Templates/content/TUnit/TestProject.csproj +++ b/TUnit.Templates/content/TUnit/TestProject.csproj @@ -8,7 +8,7 @@ - + \ No newline at end of file diff --git a/tools/tunit-nuget-tester/TUnit.NugetTester/TUnit.NugetTester.FSharp/TUnit.NugetTester.FSharp.fsproj b/tools/tunit-nuget-tester/TUnit.NugetTester/TUnit.NugetTester.FSharp/TUnit.NugetTester.FSharp.fsproj index 53a1201555..d751ceae99 100644 --- a/tools/tunit-nuget-tester/TUnit.NugetTester/TUnit.NugetTester.FSharp/TUnit.NugetTester.FSharp.fsproj +++ b/tools/tunit-nuget-tester/TUnit.NugetTester/TUnit.NugetTester.FSharp/TUnit.NugetTester.FSharp.fsproj @@ -15,7 +15,7 @@ - $(TUnitVersion) + 0.50.0