diff --git a/src/Playwright.Tests/Playwright.Tests.csproj b/src/Playwright.Tests/Playwright.Tests.csproj
index b744244c25..9637a94e42 100644
--- a/src/Playwright.Tests/Playwright.Tests.csproj
+++ b/src/Playwright.Tests/Playwright.Tests.csproj
@@ -8,13 +8,11 @@
1701;1702Microsoft.Playwright.TestsMicrosoft.Playwright.Tests
- falseenable
- runtime; build; native; contentfiles; analyzers; buildtransitiveall
@@ -26,13 +24,7 @@
-
-
-
-
-
-
diff --git a/src/Playwright.Tests/Utils/IdentifyMissingTests.cs b/src/Playwright.Tests/Utils/IdentifyMissingTests.cs
deleted file mode 100644
index da632c1cf7..0000000000
--- a/src/Playwright.Tests/Utils/IdentifyMissingTests.cs
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * MIT License
- *
- * Copyright (c) Microsoft Corporation.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-using System.Reflection;
-
-namespace Microsoft.Playwright.Tests;
-
-///
-/// This will identify missing tests from upstream.
-///
-internal static class IdentifyMissingTests
-{
- private static readonly List<(string FileName, string TestName)> _testPairs = new();
-
- ///
- /// Runs the scenario.
- ///
- /// The options argument.
- public static void Run(IdentifyMissingTestsOptions options)
- {
- // get all files that match a pattern
- var directoryInfo = new DirectoryInfo(options.SpecFileLocations);
- if (!directoryInfo.Exists)
- {
- throw new ArgumentException($"The location ({directoryInfo.FullName}) specified does not exist.");
- }
-
- // let's map the test cases from the spec files
- MapTestsCases(directoryInfo, options, string.Empty);
-
- // now, let's load the DLL and use some reflection-fu
- var assembly = Assembly.LoadFrom(options.TestsAssemblyPath);
-
- var attributes = assembly.DefinedTypes.SelectMany(
- type => type.GetMethods().SelectMany(method => method.GetCustomAttributes()));
-
- int potentialMatches = 0;
- int fullMatches = 0;
- int noMatches = 0;
- int totalTests = 0;
-
- List<(string FileName, string TestName)> missingTests = new();
- List>> invalidMaps = new();
- foreach (var atx in attributes)
- {
- totalTests++;
-
- // a test can either be a full match, a partial (i.e. just the test name) or no match
- var potentialMatch = _testPairs.Where(x => string.Equals(x.TestName, atx.TestName, StringComparison.InvariantCultureIgnoreCase));
- if (!potentialMatch.Any())
- {
- noMatches++;
- missingTests.Add((atx.FileName, atx.TestName));
- }
- else if (potentialMatch.Any(x => string.Equals(x.FileName, atx.TrimmedName, StringComparison.InvariantCultureIgnoreCase)))
- {
- fullMatches++;
- continue;
- }
- else
- {
- invalidMaps.Add(new KeyValuePair<(string, string), List<(string, string)>>((atx.TrimmedName, atx.TestName), potentialMatch.ToList()));
- potentialMatches++;
- }
- }
-
- Console.ForegroundColor = ConsoleColor.Green;
- Console.WriteLine($"Total matching tests: {fullMatches}/{totalTests}.");
- Console.ResetColor();
-
- Console.ForegroundColor = ConsoleColor.Yellow;
- Console.WriteLine($"Total tests found by name, but not by file: {potentialMatches}/{totalTests}.");
- Console.ResetColor();
-
- foreach (var invalidTest in invalidMaps)
- {
- Console.WriteLine($"{invalidTest.Key.FileName}: {invalidTest.Key.TestName}");
- foreach (var (fileName, testName) in invalidTest.Value)
- {
- Console.WriteLine($"\t{fileName}: {testName}");
- }
- }
-
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine($"Total missing tests: {noMatches}/{totalTests}.");
- Console.ResetColor();
-
- foreach (var invalidTest in missingTests)
- {
- Console.WriteLine($"{invalidTest.FileName}: {invalidTest.TestName}");
- }
-
- Console.WriteLine($"Found/Mismatched/Missing: {fullMatches}/{potentialMatches}/{noMatches} out of {totalTests}");
- }
-
- private static void MapTestsCases(DirectoryInfo directoryInfo, IdentifyMissingTestsOptions options, string basePath)
- {
- // get the sub-directories
- if (options.Recursive)
- {
- foreach (var subdirectory in directoryInfo.GetDirectories())
- {
- MapTestsCases(subdirectory, options, $"{basePath}{subdirectory.Name}/");
- }
- }
-
- foreach (var fileInfo in directoryInfo.GetFiles(options.Pattern))
- {
- ScaffoldTest.FindTestsInFile(
- fileInfo.FullName,
- (testName) =>
- {
- _testPairs.Add(new(basePath + fileInfo.Name.Substring(0, fileInfo.Name.IndexOf('.')), testName));
- });
- }
- }
-}
-
diff --git a/src/Playwright.Tests/Utils/IdentifyMissingTestsOptions.cs b/src/Playwright.Tests/Utils/IdentifyMissingTestsOptions.cs
deleted file mode 100644
index d0acba05f0..0000000000
--- a/src/Playwright.Tests/Utils/IdentifyMissingTestsOptions.cs
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * MIT License
- *
- * Copyright (c) Microsoft Corporation.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-using CommandLine;
-
-namespace Microsoft.Playwright.Tests;
-
-///
-/// Describes the options for scaffolding the tests.
-///
-[Verb("missing-tests", HelpText = "Checks if there are missing tests in the C# variant, compared to the specs.")]
-internal class IdentifyMissingTestsOptions
-{
- [Option(Required = true, HelpText = "Location of the PlaywrightSharp.Tests assembly.")]
- public string TestsAssemblyPath { get; set; }
-
- [Option(Required = true, HelpText = "Location of spec files.")]
- public string SpecFileLocations { get; set; }
-
- [Option(Required = false, HelpText = "The search pattern to use for spec files.", Default = "*.spec.ts")]
- public string Pattern { get; set; }
-
- [Option(Required = false, Default = true, HelpText = "When True, looks inside subdirectories of specified location as well.")]
- public bool Recursive { get; set; }
-}
diff --git a/src/Playwright.Tests/Utils/Program.cs b/src/Playwright.Tests/Utils/Program.cs
deleted file mode 100644
index ce4315223d..0000000000
--- a/src/Playwright.Tests/Utils/Program.cs
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * MIT License
- *
- * Copyright (c) Microsoft Corporation.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-using CommandLine;
-
-namespace Microsoft.Playwright.Tests;
-
-public static class Program
-{
- public static void Main(string[] args)
- {
- ParserResult