diff --git a/Directory.Packages.props b/Directory.Packages.props index 5e15df76e4..55a1b65b1a 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -48,14 +48,8 @@ - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - + + diff --git a/TUnit.Pipeline/Modules/RunPlaywrightTestsModule.cs b/TUnit.Pipeline/Modules/RunPlaywrightTestsModule.cs index 49f4ec85e5..a4ff52e2be 100644 --- a/TUnit.Pipeline/Modules/RunPlaywrightTestsModule.cs +++ b/TUnit.Pipeline/Modules/RunPlaywrightTestsModule.cs @@ -14,13 +14,12 @@ public class RunPlaywrightTestsModule : Module { protected override async Task ExecuteAsync(IPipelineContext context, CancellationToken cancellationToken) { - var project = context.Git().RootDirectory.FindFile(x => x.Name == "TUnit.Playwright.Tests.csproj").AssertExists(); + var project = Sourcy.DotNet.Projects.TUnit_Templates__content__TUnit_Playwright__TestProject; - return await context.DotNet().Test(new DotNetTestOptions(project) + return await context.DotNet().Test(new DotNetTestOptions(project.FullName) { NoBuild = true, Configuration = Configuration.Release, - Framework = Environment.GetEnvironmentVariable("NET_VERSION"), EnvironmentVariables = new Dictionary { ["DISABLE_GITHUB_REPORTER"] = "true", diff --git a/TUnit.Playwright.Tests/TUnit.Playwright.Tests.csproj b/TUnit.Playwright.Tests/TUnit.Playwright.Tests.csproj deleted file mode 100644 index 6e0897546d..0000000000 --- a/TUnit.Playwright.Tests/TUnit.Playwright.Tests.csproj +++ /dev/null @@ -1,17 +0,0 @@ - - - - true - false - true - Exe - true - true - false - - - - - - - diff --git a/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/.gitignore b/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/.gitignore new file mode 100644 index 0000000000..7dbec2290d --- /dev/null +++ b/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/.gitignore @@ -0,0 +1,13 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Rider ignored files +/modules.xml +/projectSettingsUpdater.xml +/contentModel.xml +/.idea.TUnit.iml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/.name b/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/.name new file mode 100644 index 0000000000..de9ae12538 --- /dev/null +++ b/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/.name @@ -0,0 +1 @@ +TUnit \ No newline at end of file diff --git a/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/encodings.xml b/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/encodings.xml new file mode 100644 index 0000000000..df87cf951f --- /dev/null +++ b/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/encodings.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/indexLayout.xml b/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/indexLayout.xml new file mode 100644 index 0000000000..7b08163ceb --- /dev/null +++ b/TUnit.Templates/.idea/.idea.TUnit.dir/.idea/indexLayout.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/TUnit.Templates/content/TUnit.AspNet/.template.config/template.json b/TUnit.Templates/content/TUnit.AspNet/.template.config/template.json new file mode 100644 index 0000000000..f2343bfb10 --- /dev/null +++ b/TUnit.Templates/content/TUnit.AspNet/.template.config/template.json @@ -0,0 +1,22 @@ +{ + "$schema": "http://json.schemastore.org/template", + "author": "Tom Longhurst", + "description": "A template for testing an ASP.NET Core project with TUnit", + "classifications": [ + "Test", + "TUnit", + "Asp", + "ASP.NET" + ], + "name": "TUnit ASP.NET Core Project", + "identity": "TUnit.Test.AspNet", + "groupIdentity": "TUnit", + "shortName": "TUnit.AspNet", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "TestProject", + "preferNameDirectory": true + } + \ No newline at end of file diff --git a/TUnit.Templates/content/TUnit.Playwright/.template.config/template.json b/TUnit.Templates/content/TUnit.Playwright/.template.config/template.json new file mode 100644 index 0000000000..d6c691ad79 --- /dev/null +++ b/TUnit.Templates/content/TUnit.Playwright/.template.config/template.json @@ -0,0 +1,21 @@ +{ + "$schema": "http://json.schemastore.org/template", + "author": "Tom Longhurst", + "description": "A template for testing using Playwright with TUnit", + "classifications": [ + "Test", + "TUnit", + "Playwright" + ], + "name": "TUnit Playwright Project", + "identity": "TUnit.Test.Playwright", + "groupIdentity": "TUnit", + "shortName": "TUnit.Playwright", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "TestProject", + "preferNameDirectory": true + } + \ No newline at end of file diff --git a/TUnit.Playwright.Tests/Hooks.cs b/TUnit.Templates/content/TUnit.Playwright/Hooks.cs similarity index 83% rename from TUnit.Playwright.Tests/Hooks.cs rename to TUnit.Templates/content/TUnit.Playwright/Hooks.cs index 24b308d9c7..46bd212bac 100644 --- a/TUnit.Playwright.Tests/Hooks.cs +++ b/TUnit.Templates/content/TUnit.Playwright/Hooks.cs @@ -1,10 +1,10 @@ using System.Diagnostics; -namespace TUnit.Playwright.Tests; +namespace TestProject; public class Hooks { - [Before(Assembly)] + [Before(TestSession)] public static void InstallPlaywright() { if (Debugger.IsAttached) diff --git a/TUnit.Templates/content/TUnit.Playwright/TestProject.csproj b/TUnit.Templates/content/TUnit.Playwright/TestProject.csproj new file mode 100644 index 0000000000..a16410c4a7 --- /dev/null +++ b/TUnit.Templates/content/TUnit.Playwright/TestProject.csproj @@ -0,0 +1,14 @@ + + + + enable + enable + Exe + net8.0 + + + + + + + diff --git a/TUnit.Playwright.Tests/Tests.cs b/TUnit.Templates/content/TUnit.Playwright/Tests.cs similarity index 76% rename from TUnit.Playwright.Tests/Tests.cs rename to TUnit.Templates/content/TUnit.Playwright/Tests.cs index 2545c5faf7..f496237e05 100644 --- a/TUnit.Playwright.Tests/Tests.cs +++ b/TUnit.Templates/content/TUnit.Playwright/Tests.cs @@ -1,17 +1,12 @@ using System.Text.RegularExpressions; +using TUnit.Playwright; -namespace TUnit.Playwright.Tests; +namespace TestProject; public class Tests : PageTest { [Test] public async Task Test() - { - await Page.GotoAsync("https://www.github.com/thomhurst/TUnit"); - } - - [Test] - public async Task HomepageHasPlaywrightInTitleAndGetStartedLinkLinkingtoTheIntroPage() { await Page.GotoAsync("https://playwright.dev"); diff --git a/TUnit.Templates/content/TUnit/.template.config/template.json b/TUnit.Templates/content/TUnit/.template.config/template.json index 772e07bd94..a2c1976f9a 100644 --- a/TUnit.Templates/content/TUnit/.template.config/template.json +++ b/TUnit.Templates/content/TUnit/.template.config/template.json @@ -6,8 +6,8 @@ "Test", "TUnit" ], - "name": "TUnit Test Project", - "identity": "TUnit.Test.Project", + "name": "TUnit Mixed Test Project", + "identity": "TUnit.Test.Mixed", "groupIdentity": "TUnit", "shortName": "TUnit", "tags": { diff --git a/TUnit.sln b/TUnit.sln index 16ea6e3eff..4705c4626e 100644 --- a/TUnit.sln +++ b/TUnit.sln @@ -55,7 +55,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TUnit.Playwright", "TUnit.Playwright\TUnit.Playwright.csproj", "{33C13E01-6FC8-4118-A4EB-7C63E6612248}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TUnit.Playwright.Tests", "TUnit.Playwright.Tests\TUnit.Playwright.Tests.csproj", "{EB92E3E9-A192-4DDD-9B10-4355D74BD119}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestProject", "TUnit.Templates\content\TUnit.Playwright\TestProject.csproj", "{EB92E3E9-A192-4DDD-9B10-4355D74BD119}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SourceGenerators", "SourceGenerators", "{6F7B9D8E-4539-42BC-BE0B-E5BE70ED9473}" EndProject @@ -81,6 +81,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestProject", "TUnit.Templa EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebApp", "TUnit.Templates\content\TUnit.AspNet\WebApp\WebApp.csproj", "{D778BF96-702F-4A59-A2D5-E348A3320E58}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Playwright", "Playwright", "{32F534AB-F8C1-42D0-BFB3-9270CEA6C3F3}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -228,7 +230,6 @@ Global {BD0CDBA0-8A38-45A2-8581-043A13A34D67} = {62AD1EAF-43C4-4AC0-B9FA-CD59739B3850} {2DE2A1F9-2A87-4FA8-8D62-0B60093DA604} = {62AD1EAF-43C4-4AC0-B9FA-CD59739B3850} {33C13E01-6FC8-4118-A4EB-7C63E6612248} = {1B56B580-4D59-4E83-9F80-467D58DADAC1} - {EB92E3E9-A192-4DDD-9B10-4355D74BD119} = {62AD1EAF-43C4-4AC0-B9FA-CD59739B3850} {BECB04A9-C731-4AC0-B76B-36382BFE77AA} = {6F7B9D8E-4539-42BC-BE0B-E5BE70ED9473} {1EF4041E-CBD0-49C9-9D4B-56E16B653170} = {6F7B9D8E-4539-42BC-BE0B-E5BE70ED9473} {C1320FF8-0AAB-4C41-A87B-841AFB0A512A} = {6F7B9D8E-4539-42BC-BE0B-E5BE70ED9473} @@ -240,6 +241,8 @@ Global {23F41068-7C7E-435C-B6AB-4258B6380DC2} = {835A7825-FC06-46E2-B3B1-2BF791A22B97} {2BCFDB65-AF9F-4CC4-B215-4C0035906F2A} = {23F41068-7C7E-435C-B6AB-4258B6380DC2} {D778BF96-702F-4A59-A2D5-E348A3320E58} = {23F41068-7C7E-435C-B6AB-4258B6380DC2} + {32F534AB-F8C1-42D0-BFB3-9270CEA6C3F3} = {835A7825-FC06-46E2-B3B1-2BF791A22B97} + {EB92E3E9-A192-4DDD-9B10-4355D74BD119} = {32F534AB-F8C1-42D0-BFB3-9270CEA6C3F3} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {109D285A-36B3-4503-BCDF-8E26FB0E2C5B}