From a6fa2f38a6b7a5a9c330db4c348a5aff0ff13823 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Fri, 13 Mar 2026 16:13:14 -0700 Subject: [PATCH 01/13] Split tests to assist in base PR build gate times --- .github/workflows/ci-validate-platforms.yml | 4 ++-- .github/workflows/ci-validate-pr.yml | 2 +- packages/fast-element/package.json | 1 + .../fast-element/playwright.all.config.ts | 20 +++++++++++++++++++ packages/fast-element/playwright.config.ts | 8 -------- packages/fast-html/package.json | 1 + packages/fast-html/playwright.all.config.ts | 20 +++++++++++++++++++ packages/fast-html/playwright.config.ts | 7 ++++--- 8 files changed, 49 insertions(+), 14 deletions(-) create mode 100644 packages/fast-element/playwright.all.config.ts create mode 100644 packages/fast-html/playwright.all.config.ts diff --git a/.github/workflows/ci-validate-platforms.yml b/.github/workflows/ci-validate-platforms.yml index ccc4249c754..d1f1316c04f 100644 --- a/.github/workflows/ci-validate-platforms.yml +++ b/.github/workflows/ci-validate-platforms.yml @@ -1,4 +1,4 @@ -name: Validate Platforms/Browsers +name: Validate PRs On All Platforms/Browsers on: workflow_dispatch: @@ -65,4 +65,4 @@ jobs: npx playwright install --with-deps - name: Run tests in all Packages - run: npm run test + run: npm run test:all --if-present diff --git a/.github/workflows/ci-validate-pr.yml b/.github/workflows/ci-validate-pr.yml index 620a0254649..3fde9398b55 100644 --- a/.github/workflows/ci-validate-pr.yml +++ b/.github/workflows/ci-validate-pr.yml @@ -1,4 +1,4 @@ -name: Validate PRs +name: Validate PRs on Chromium on: workflow_dispatch: diff --git a/packages/fast-element/package.json b/packages/fast-element/package.json index 5c9443d713a..2814947c797 100644 --- a/packages/fast-element/package.json +++ b/packages/fast-element/package.json @@ -119,6 +119,7 @@ "test:playwright": "playwright test", "test-server": "npx vite test/ --clearScreen false", "test": "npm run eslint && npm run doc:ci && npm run doc:exports:ci && npm run test:playwright", + "test:all": "playwright test --config=playwright.all.config.ts", "test-node": "nyc --reporter=lcov --reporter=text-summary --report-dir=coverage/node --temp-dir=coverage/.nyc_output mocha --reporter min --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", "test-node:verbose": "nyc --reporter=lcov --reporter=text-summary --report-dir=coverage/node --temp-dir=coverage/.nyc_output mocha --reporter spec --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", "test-chrome": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --single-run --coverage", diff --git a/packages/fast-element/playwright.all.config.ts b/packages/fast-element/playwright.all.config.ts new file mode 100644 index 00000000000..478449e3b8c --- /dev/null +++ b/packages/fast-element/playwright.all.config.ts @@ -0,0 +1,20 @@ +import { defineConfig, devices } from "@playwright/test"; +import commonConfig from "./playwright.config.js"; + +export default defineConfig({ + ...commonConfig, + projects: [ + { + name: "chromium", + use: { ...devices["Desktop Chrome"] }, + }, + { + name: "firefox", + use: { ...devices["Desktop Firefox"] }, + }, + { + name: "webkit", + use: { ...devices["Desktop Safari"] }, + }, + ], +}); diff --git a/packages/fast-element/playwright.config.ts b/packages/fast-element/playwright.config.ts index 6410bfe9af9..bfae0af8026 100644 --- a/packages/fast-element/playwright.config.ts +++ b/packages/fast-element/playwright.config.ts @@ -9,14 +9,6 @@ export default defineConfig({ name: "chromium", use: { ...devices["Desktop Chrome"] }, }, - { - name: "firefox", - use: { ...devices["Desktop Firefox"] }, - }, - { - name: "webkit", - use: { ...devices["Desktop Safari"] }, - }, ], webServer: { command: "npm run test-server", diff --git a/packages/fast-html/package.json b/packages/fast-html/package.json index 7970174b571..3e861f5bf10 100644 --- a/packages/fast-html/package.json +++ b/packages/fast-html/package.json @@ -36,6 +36,7 @@ "prettier": "prettier --config ../../.prettierrc --write \"**/*.{ts,html}\"", "test-server": "npx vite test/ --clearScreen false", "test:playwright": "playwright test", + "test:all": "playwright test --config=playwright.all.config.ts", "test:rules": "sg test --skip-snapshot-tests", "test": "npm run test:playwright && npm run test:rules", "test:ui": "concurrently -k -n fast-element,fast-html,playwright \"npm run dev --workspace=@microsoft/fast-element\" \"npm:watch\" \"npx playwright test --ui\"", diff --git a/packages/fast-html/playwright.all.config.ts b/packages/fast-html/playwright.all.config.ts new file mode 100644 index 00000000000..478449e3b8c --- /dev/null +++ b/packages/fast-html/playwright.all.config.ts @@ -0,0 +1,20 @@ +import { defineConfig, devices } from "@playwright/test"; +import commonConfig from "./playwright.config.js"; + +export default defineConfig({ + ...commonConfig, + projects: [ + { + name: "chromium", + use: { ...devices["Desktop Chrome"] }, + }, + { + name: "firefox", + use: { ...devices["Desktop Firefox"] }, + }, + { + name: "webkit", + use: { ...devices["Desktop Safari"] }, + }, + ], +}); diff --git a/packages/fast-html/playwright.config.ts b/packages/fast-html/playwright.config.ts index 3328388a589..ea78fdf9413 100644 --- a/packages/fast-html/playwright.config.ts +++ b/packages/fast-html/playwright.config.ts @@ -5,9 +5,10 @@ export default defineConfig({ testMatch: "**/*.spec.ts", retries: 3, projects: [ - { name: "chromium", use: { ...devices["Desktop Chrome"] } }, - { name: "firefox", use: { ...devices["Desktop Firefox"] } }, - { name: "webkit", use: { ...devices["Desktop Safari"] } }, + { + name: "chromium", + use: { ...devices["Desktop Chrome"] }, + }, ], webServer: { command: "npm run test-server", From f8c7ddfaee80a0c100ff6c460d18c3553176def6 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Fri, 13 Mar 2026 16:14:14 -0700 Subject: [PATCH 02/13] Change files --- ...-fast-element-a13a2674-cd3b-4f08-b1b3-2b6d33e9d581.json | 7 +++++++ ...oft-fast-html-46be649c-4373-47fb-b68f-ef6428174490.json | 7 +++++++ 2 files changed, 14 insertions(+) create mode 100644 change/@microsoft-fast-element-a13a2674-cd3b-4f08-b1b3-2b6d33e9d581.json create mode 100644 change/@microsoft-fast-html-46be649c-4373-47fb-b68f-ef6428174490.json diff --git a/change/@microsoft-fast-element-a13a2674-cd3b-4f08-b1b3-2b6d33e9d581.json b/change/@microsoft-fast-element-a13a2674-cd3b-4f08-b1b3-2b6d33e9d581.json new file mode 100644 index 00000000000..b1d4190fcbc --- /dev/null +++ b/change/@microsoft-fast-element-a13a2674-cd3b-4f08-b1b3-2b6d33e9d581.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "Split tests to assist in base PR build gate times", + "packageName": "@microsoft/fast-element", + "email": "7559015+janechu@users.noreply.github.com", + "dependentChangeType": "none" +} diff --git a/change/@microsoft-fast-html-46be649c-4373-47fb-b68f-ef6428174490.json b/change/@microsoft-fast-html-46be649c-4373-47fb-b68f-ef6428174490.json new file mode 100644 index 00000000000..7a83633f7c9 --- /dev/null +++ b/change/@microsoft-fast-html-46be649c-4373-47fb-b68f-ef6428174490.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "Split tests to assist in base PR build gate times", + "packageName": "@microsoft/fast-html", + "email": "7559015+janechu@users.noreply.github.com", + "dependentChangeType": "none" +} From 0e89ee61bba1c2304d9ed10c2ef2c7a58bc81a69 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Fri, 13 Mar 2026 16:29:21 -0700 Subject: [PATCH 03/13] Add missing workspaces flag --- .github/workflows/ci-validate-platforms.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-validate-platforms.yml b/.github/workflows/ci-validate-platforms.yml index d1f1316c04f..e67187d89d3 100644 --- a/.github/workflows/ci-validate-platforms.yml +++ b/.github/workflows/ci-validate-platforms.yml @@ -65,4 +65,4 @@ jobs: npx playwright install --with-deps - name: Run tests in all Packages - run: npm run test:all --if-present + run: npm run test:all --workspaces --if-present From 3d9c17e28ff2ff2032dc7349401351bcc03afde6 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Mon, 16 Mar 2026 10:41:35 -0700 Subject: [PATCH 04/13] Use the projects arg instead of individual playwright configs --- .github/workflows/ci-validate-platforms.yml | 2 +- .github/workflows/ci-validate-pr.yml | 2 +- packages/fast-element/package.json | 1 - .../fast-element/playwright.all.config.ts | 20 ------------------- packages/fast-element/playwright.config.ts | 8 ++++++++ packages/fast-html/package.json | 1 - packages/fast-html/playwright.all.config.ts | 20 ------------------- packages/fast-html/playwright.config.ts | 8 ++++++++ 8 files changed, 18 insertions(+), 44 deletions(-) delete mode 100644 packages/fast-element/playwright.all.config.ts delete mode 100644 packages/fast-html/playwright.all.config.ts diff --git a/.github/workflows/ci-validate-platforms.yml b/.github/workflows/ci-validate-platforms.yml index e67187d89d3..73c03001423 100644 --- a/.github/workflows/ci-validate-platforms.yml +++ b/.github/workflows/ci-validate-platforms.yml @@ -65,4 +65,4 @@ jobs: npx playwright install --with-deps - name: Run tests in all Packages - run: npm run test:all --workspaces --if-present + run: npm run test --project=* diff --git a/.github/workflows/ci-validate-pr.yml b/.github/workflows/ci-validate-pr.yml index 3fde9398b55..fbc91d17fb7 100644 --- a/.github/workflows/ci-validate-pr.yml +++ b/.github/workflows/ci-validate-pr.yml @@ -52,7 +52,7 @@ jobs: npx playwright install --with-deps - name: Testing unit tests - run: npm run test + run: npm run test --project=chromium - name: Testing final validation run: npm run test:validation diff --git a/packages/fast-element/package.json b/packages/fast-element/package.json index 2814947c797..5c9443d713a 100644 --- a/packages/fast-element/package.json +++ b/packages/fast-element/package.json @@ -119,7 +119,6 @@ "test:playwright": "playwright test", "test-server": "npx vite test/ --clearScreen false", "test": "npm run eslint && npm run doc:ci && npm run doc:exports:ci && npm run test:playwright", - "test:all": "playwright test --config=playwright.all.config.ts", "test-node": "nyc --reporter=lcov --reporter=text-summary --report-dir=coverage/node --temp-dir=coverage/.nyc_output mocha --reporter min --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", "test-node:verbose": "nyc --reporter=lcov --reporter=text-summary --report-dir=coverage/node --temp-dir=coverage/.nyc_output mocha --reporter spec --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", "test-chrome": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --single-run --coverage", diff --git a/packages/fast-element/playwright.all.config.ts b/packages/fast-element/playwright.all.config.ts deleted file mode 100644 index 478449e3b8c..00000000000 --- a/packages/fast-element/playwright.all.config.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { defineConfig, devices } from "@playwright/test"; -import commonConfig from "./playwright.config.js"; - -export default defineConfig({ - ...commonConfig, - projects: [ - { - name: "chromium", - use: { ...devices["Desktop Chrome"] }, - }, - { - name: "firefox", - use: { ...devices["Desktop Firefox"] }, - }, - { - name: "webkit", - use: { ...devices["Desktop Safari"] }, - }, - ], -}); diff --git a/packages/fast-element/playwright.config.ts b/packages/fast-element/playwright.config.ts index bfae0af8026..6410bfe9af9 100644 --- a/packages/fast-element/playwright.config.ts +++ b/packages/fast-element/playwright.config.ts @@ -9,6 +9,14 @@ export default defineConfig({ name: "chromium", use: { ...devices["Desktop Chrome"] }, }, + { + name: "firefox", + use: { ...devices["Desktop Firefox"] }, + }, + { + name: "webkit", + use: { ...devices["Desktop Safari"] }, + }, ], webServer: { command: "npm run test-server", diff --git a/packages/fast-html/package.json b/packages/fast-html/package.json index 3e861f5bf10..7970174b571 100644 --- a/packages/fast-html/package.json +++ b/packages/fast-html/package.json @@ -36,7 +36,6 @@ "prettier": "prettier --config ../../.prettierrc --write \"**/*.{ts,html}\"", "test-server": "npx vite test/ --clearScreen false", "test:playwright": "playwright test", - "test:all": "playwright test --config=playwright.all.config.ts", "test:rules": "sg test --skip-snapshot-tests", "test": "npm run test:playwright && npm run test:rules", "test:ui": "concurrently -k -n fast-element,fast-html,playwright \"npm run dev --workspace=@microsoft/fast-element\" \"npm:watch\" \"npx playwright test --ui\"", diff --git a/packages/fast-html/playwright.all.config.ts b/packages/fast-html/playwright.all.config.ts deleted file mode 100644 index 478449e3b8c..00000000000 --- a/packages/fast-html/playwright.all.config.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { defineConfig, devices } from "@playwright/test"; -import commonConfig from "./playwright.config.js"; - -export default defineConfig({ - ...commonConfig, - projects: [ - { - name: "chromium", - use: { ...devices["Desktop Chrome"] }, - }, - { - name: "firefox", - use: { ...devices["Desktop Firefox"] }, - }, - { - name: "webkit", - use: { ...devices["Desktop Safari"] }, - }, - ], -}); diff --git a/packages/fast-html/playwright.config.ts b/packages/fast-html/playwright.config.ts index ea78fdf9413..915d6fab715 100644 --- a/packages/fast-html/playwright.config.ts +++ b/packages/fast-html/playwright.config.ts @@ -9,6 +9,14 @@ export default defineConfig({ name: "chromium", use: { ...devices["Desktop Chrome"] }, }, + { + name: "firefox", + use: { ...devices["Desktop Firefox"] }, + }, + { + name: "webkit", + use: { ...devices["Desktop Safari"] }, + }, ], webServer: { command: "npm run test-server", From 852eac12492e941188052cd89dba5368ee7a34e6 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Mon, 16 Mar 2026 12:19:30 -0700 Subject: [PATCH 05/13] Specify playwright tests --- .github/workflows/ci-validate-platforms.yml | 2 +- .github/workflows/ci-validate-pr.yml | 2 +- packages/fast-ssr/package.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci-validate-platforms.yml b/.github/workflows/ci-validate-platforms.yml index 73c03001423..fb00d123515 100644 --- a/.github/workflows/ci-validate-platforms.yml +++ b/.github/workflows/ci-validate-platforms.yml @@ -65,4 +65,4 @@ jobs: npx playwright install --with-deps - name: Run tests in all Packages - run: npm run test --project=* + run: npm run test:playwright --project=* diff --git a/.github/workflows/ci-validate-pr.yml b/.github/workflows/ci-validate-pr.yml index fbc91d17fb7..2245b217564 100644 --- a/.github/workflows/ci-validate-pr.yml +++ b/.github/workflows/ci-validate-pr.yml @@ -52,7 +52,7 @@ jobs: npx playwright install --with-deps - name: Testing unit tests - run: npm run test --project=chromium + run: npm run test:playwright --project=chromium - name: Testing final validation run: npm run test:validation diff --git a/packages/fast-ssr/package.json b/packages/fast-ssr/package.json index 212c0c3ad6c..0b9bcf7c9aa 100644 --- a/packages/fast-ssr/package.json +++ b/packages/fast-ssr/package.json @@ -28,7 +28,7 @@ "pretest": "npm run build-server && npm run build", "prettier:diff": "prettier --config ../../.prettierrc \"**/*.{ts,html}\" --list-different", "prettier": "prettier --config ../../.prettierrc --write \"**/*.{ts,html}\"", - "test": "playwright test --config=playwright.config.cjs", + "test:playwright": "playwright test --config=playwright.config.cjs", "test-server": "node server/dist/server.js", "install-playwright-browsers": "npm run playwright install" }, From 8789b9cba1532d86acbf320ab61df79d066be555 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Mon, 16 Mar 2026 12:22:54 -0700 Subject: [PATCH 06/13] Change files --- ...soft-fast-ssr-bbc894e1-91f1-47b9-ad60-cd80a8ba5579.json | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 change/@microsoft-fast-ssr-bbc894e1-91f1-47b9-ad60-cd80a8ba5579.json diff --git a/change/@microsoft-fast-ssr-bbc894e1-91f1-47b9-ad60-cd80a8ba5579.json b/change/@microsoft-fast-ssr-bbc894e1-91f1-47b9-ad60-cd80a8ba5579.json new file mode 100644 index 00000000000..a5dd8eff9df --- /dev/null +++ b/change/@microsoft-fast-ssr-bbc894e1-91f1-47b9-ad60-cd80a8ba5579.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "Split tests to assist in base PR build gate times", + "packageName": "@microsoft/fast-ssr", + "email": "7559015+janechu@users.noreply.github.com", + "dependentChangeType": "none" +} From 5addd3dcd1f47ab2dface0ce8b6c03fc90027316 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Mon, 16 Mar 2026 12:35:20 -0700 Subject: [PATCH 07/13] Add -ws and --if-present checks --- .github/workflows/ci-validate-platforms.yml | 2 +- .github/workflows/ci-validate-pr.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-validate-platforms.yml b/.github/workflows/ci-validate-platforms.yml index fb00d123515..ffbe8346160 100644 --- a/.github/workflows/ci-validate-platforms.yml +++ b/.github/workflows/ci-validate-platforms.yml @@ -65,4 +65,4 @@ jobs: npx playwright install --with-deps - name: Run tests in all Packages - run: npm run test:playwright --project=* + run: npm run test:playwright --project=* -ws --if-present diff --git a/.github/workflows/ci-validate-pr.yml b/.github/workflows/ci-validate-pr.yml index 2245b217564..d1c4e8d621d 100644 --- a/.github/workflows/ci-validate-pr.yml +++ b/.github/workflows/ci-validate-pr.yml @@ -52,7 +52,7 @@ jobs: npx playwright install --with-deps - name: Testing unit tests - run: npm run test:playwright --project=chromium + run: npm run test:playwright --project=chromium -ws --if-present - name: Testing final validation run: npm run test:validation From 11493e785da1c30bd0609d51883f49186c13c331 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Mon, 16 Mar 2026 13:42:13 -0700 Subject: [PATCH 08/13] Fix failing PR pipeline test --- packages/fast-ssr/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/fast-ssr/package.json b/packages/fast-ssr/package.json index 0b9bcf7c9aa..eceb67b04e6 100644 --- a/packages/fast-ssr/package.json +++ b/packages/fast-ssr/package.json @@ -28,7 +28,7 @@ "pretest": "npm run build-server && npm run build", "prettier:diff": "prettier --config ../../.prettierrc \"**/*.{ts,html}\" --list-different", "prettier": "prettier --config ../../.prettierrc --write \"**/*.{ts,html}\"", - "test:playwright": "playwright test --config=playwright.config.cjs", + "test:playwright": "npm run pretest && playwright test --config=playwright.config.cjs", "test-server": "node server/dist/server.js", "install-playwright-browsers": "npm run playwright install" }, From 40a09bc80e69378836d056bfa848983c48025023 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Mon, 16 Mar 2026 14:38:51 -0700 Subject: [PATCH 09/13] Move project selection to root --- .github/workflows/ci-validate-platforms.yml | 2 +- .github/workflows/ci-validate-pr.yml | 2 +- package.json | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci-validate-platforms.yml b/.github/workflows/ci-validate-platforms.yml index ffbe8346160..18fbef5ad54 100644 --- a/.github/workflows/ci-validate-platforms.yml +++ b/.github/workflows/ci-validate-platforms.yml @@ -65,4 +65,4 @@ jobs: npx playwright install --with-deps - name: Run tests in all Packages - run: npm run test:playwright --project=* -ws --if-present + run: npm run test diff --git a/.github/workflows/ci-validate-pr.yml b/.github/workflows/ci-validate-pr.yml index d1c4e8d621d..811af41b9ea 100644 --- a/.github/workflows/ci-validate-pr.yml +++ b/.github/workflows/ci-validate-pr.yml @@ -52,7 +52,7 @@ jobs: npx playwright install --with-deps - name: Testing unit tests - run: npm run test:playwright --project=chromium -ws --if-present + run: npm run test:chromium - name: Testing final validation run: npm run test:validation diff --git a/package.json b/package.json index 4525b0872e0..425ee3808f2 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,8 @@ "test:diff:error": "echo \"Untracked files exist, try running npm prepare to identify the culprit.\" && exit 1", "test:diff": "git update-index --refresh && git diff-index --quiet HEAD -- || npm run test:diff:error", "test:validation": "npm run test:diff", - "test": "npm run test --workspaces --if-present", + "test": "npm run test:playwright --project=* -ws --if-present", + "test:chromium": "npm run test:playwright --project=chromium -ws --if-present", "watch": "tsc -p ./tsconfig.json -w --preserveWatchOutput", "format:check": "npx prettier . --check", "format": "npx prettier . --write" From 253dda3ae1808ffd36fca05d2a2696ebaa02acbd Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Mon, 16 Mar 2026 16:39:24 -0700 Subject: [PATCH 10/13] Update package.json Co-authored-by: John Kreitlow <863023+radium-v@users.noreply.github.com> --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 425ee3808f2..0a58ac918f7 100644 --- a/package.json +++ b/package.json @@ -39,8 +39,8 @@ "test:diff:error": "echo \"Untracked files exist, try running npm prepare to identify the culprit.\" && exit 1", "test:diff": "git update-index --refresh && git diff-index --quiet HEAD -- || npm run test:diff:error", "test:validation": "npm run test:diff", - "test": "npm run test:playwright --project=* -ws --if-present", - "test:chromium": "npm run test:playwright --project=chromium -ws --if-present", + "test": "npm run test:playwright -ws --if-present -- --project=*", + "test:chromium": "npm run test:playwright -ws --if-present -- --project=chromium", "watch": "tsc -p ./tsconfig.json -w --preserveWatchOutput", "format:check": "npx prettier . --check", "format": "npx prettier . --write" From 6e0a2520a83ce3e540c249e22ae3f3a69191f3f1 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Tue, 17 Mar 2026 08:22:31 -0700 Subject: [PATCH 11/13] add pretest back --- packages/fast-ssr/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/fast-ssr/package.json b/packages/fast-ssr/package.json index 7363a251266..83cfb5f0654 100644 --- a/packages/fast-ssr/package.json +++ b/packages/fast-ssr/package.json @@ -30,7 +30,7 @@ "prettier": "prettier --config ../../.prettierrc --write \"**/*.{ts,html}\"", "test": "npm run test:node && npm run test:playwright", "test:node": "node scripts/run-tests.mjs", - "test:playwright": "playwright test", + "test:playwright": "npm run pretest && playwright test", "test-server": "node server/dist/server.js" }, "description": "A package for rendering FAST Web Components outside the browser.", From 2ed2399c6feab064974b910e240bd77151852055 Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Tue, 17 Mar 2026 08:35:42 -0700 Subject: [PATCH 12/13] Add node tests --- package.json | 4 ++-- packages/fast-router/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 4e136721565..52123e90d8a 100644 --- a/package.json +++ b/package.json @@ -39,8 +39,8 @@ "test:diff:error": "echo \"Untracked files exist, try running npm prepare to identify the culprit.\" && exit 1", "test:diff": "git update-index --refresh && git diff-index --quiet HEAD -- || npm run test:diff:error", "test:validation": "npm run test:diff", - "test": "npm run test:playwright -ws --if-present -- --project=*", - "test:chromium": "npm run test:playwright -ws --if-present -- --project=chromium", + "test": "npm run test:node -ws --if-present && npm run test:playwright -ws --if-present -- --project=*", + "test:chromium": "npm run test:node -ws --if-present && npm run test:playwright -ws --if-present -- --project=chromium", "watch": "tsc -p ./tsconfig.json -w --preserveWatchOutput", "format:check": "npx prettier . --check", "format": "npx prettier . --write" diff --git a/packages/fast-router/package.json b/packages/fast-router/package.json index e2771eac46b..375f33ba18a 100644 --- a/packages/fast-router/package.json +++ b/packages/fast-router/package.json @@ -32,7 +32,7 @@ "prettier:diff": "prettier --config ../../.prettierrc \"**/*.ts\" --list-different", "eslint": "eslint . --ext .ts", "eslint:fix": "eslint . --ext .ts --fix", - "test:recognizer": "tsc -p ./tsconfig.json && node --test dist/esm/recognizer.spec.js", + "test:node": "tsc -p ./tsconfig.json && node --test dist/esm/recognizer.spec.js", "test": "npm run eslint && npm run doc:ci && npm run test:recognizer" }, "dependencies": { From d8260f204a0a6117f64830db98ec201c4e54346a Mon Sep 17 00:00:00 2001 From: Jane Chu <7559015+janechu@users.noreply.github.com> Date: Tue, 17 Mar 2026 08:44:49 -0700 Subject: [PATCH 13/13] Change files --- ...t-fast-router-f09e0d07-7742-490e-8cfd-69130c4f3e3c.json | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 change/@microsoft-fast-router-f09e0d07-7742-490e-8cfd-69130c4f3e3c.json diff --git a/change/@microsoft-fast-router-f09e0d07-7742-490e-8cfd-69130c4f3e3c.json b/change/@microsoft-fast-router-f09e0d07-7742-490e-8cfd-69130c4f3e3c.json new file mode 100644 index 00000000000..55de474b295 --- /dev/null +++ b/change/@microsoft-fast-router-f09e0d07-7742-490e-8cfd-69130c4f3e3c.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "Split tests to assist in base PR build gate times", + "packageName": "@microsoft/fast-router", + "email": "7559015+janechu@users.noreply.github.com", + "dependentChangeType": "none" +}