From ab9ca79eaf04188d0cf3677df8ebe81847804af6 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Mon, 13 Apr 2026 12:23:28 +0530 Subject: [PATCH 01/19] PlaywrightSetup Signed-off-by: kumaradityaraj --- .gitignore | 5 +++ packages/playwright/README.md | 37 +++++++++++++++++ packages/playwright/package.json | 17 ++++++++ packages/playwright/playwright.config.ts | 33 +++++++++++++++ .../playwright/tests/diagram-editor.spec.ts | 35 ++++++++++++++++ pnpm-lock.yaml | 41 +++++++++++++++++++ 6 files changed, 168 insertions(+) create mode 100644 packages/playwright/README.md create mode 100644 packages/playwright/package.json create mode 100644 packages/playwright/playwright.config.ts create mode 100644 packages/playwright/tests/diagram-editor.spec.ts diff --git a/.gitignore b/.gitignore index a9e3937..37255c6 100644 --- a/.gitignore +++ b/.gitignore @@ -175,3 +175,8 @@ vite.config.ts.timestamp-* # Apache RAT .rat-reports + +# playwright test results +test-results/ +playwright-report/ +blob-report/ \ No newline at end of file diff --git a/packages/playwright/README.md b/packages/playwright/README.md new file mode 100644 index 0000000..867f67f --- /dev/null +++ b/packages/playwright/README.md @@ -0,0 +1,37 @@ + + +# Playwright E2E Setup (Monorepo - pnpm) + +This document explains how to set up and run Playwright end-to-end (E2E) tests for packages inside this monorepo. + +--- + +## Configure Playwright + +- Configure Playwright in playwright.config.ts for the package which you want to write tests for. +- Add an endpoint for that package and make sure it is the same port where the package/app starts. +- Navigate to tests folder and create a file with the package name which you want to write test for and write all the tests in it. + +## Steps for testing + +- Run the command for testing :- + - pnpm --filter @packageName test + - Eg- pnpm --filter @serverlessworkflow/playwright test + +- For testing it in UI :- + - pnpm --filter @packageName test:ui + - Eg- pnpm --filter @serverlessworkflow/playwright test:ui diff --git a/packages/playwright/package.json b/packages/playwright/package.json new file mode 100644 index 0000000..d15db5b --- /dev/null +++ b/packages/playwright/package.json @@ -0,0 +1,17 @@ +{ + "name": "@serverlessworkflow/playwright", + "version": "1.0.0", + "description": "", + "keywords": [], + "license": "ISC", + "author": "", + "main": "index.js", + "scripts": { + "test": "playwright test", + "test:ui": "playwright test --ui" + }, + "devDependencies": { + "@playwright/test": "^1.59.1" + }, + "packageManager": "pnpm@10.31.0" +} diff --git a/packages/playwright/playwright.config.ts b/packages/playwright/playwright.config.ts new file mode 100644 index 0000000..5016a39 --- /dev/null +++ b/packages/playwright/playwright.config.ts @@ -0,0 +1,33 @@ +/* + * Copyright 2021-Present The Serverless Workflow Specification Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { defineConfig } from "@playwright/test"; + +export default defineConfig({ + testDir: "./tests", + + use: { + baseURL: "http://localhost:6006", + headless: true, + }, + + webServer: { + command: "pnpm --filter @serverlessworkflow/diagram-editor start", + url: "http://localhost:6006", + reuseExistingServer: true, + timeout: 120 * 1000, + }, +}); diff --git a/packages/playwright/tests/diagram-editor.spec.ts b/packages/playwright/tests/diagram-editor.spec.ts new file mode 100644 index 0000000..3f6cf35 --- /dev/null +++ b/packages/playwright/tests/diagram-editor.spec.ts @@ -0,0 +1,35 @@ +/* + * Copyright 2021-Present The Serverless Workflow Specification Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { test, expect } from "@playwright/test"; + +test("diagram editor renders correctly", async ({ page }) => { + await page.goto("/iframe.html?id=example-diagrameditor--component"); + + // Wait for main container + await expect(page.getByTestId("diagram-container")).toBeVisible(); + + // Check at least one specific node + await expect(page.getByTestId("rf__node-n1")).toBeVisible(); + + // Check total nodes + const nodes = page.locator('[data-testid^="rf__node-"]'); + await expect(nodes).toHaveCount(5); + + // Check total edges + const edges = page.locator('[data-testid^="rf__edge-"]'); + await expect(edges).toHaveCount(5); +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2d77801..499e35f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -123,6 +123,12 @@ importers: specifier: 'catalog:' version: 5.9.3 + packages/playwright: + devDependencies: + '@playwright/test': + specifier: ^1.59.1 + version: 1.59.1 + packages/serverless-workflow-diagram-editor: dependencies: '@serverlessworkflow/sdk': @@ -918,6 +924,11 @@ packages: cpu: [x64] os: [win32] + '@playwright/test@1.59.1': + resolution: {integrity: sha512-PG6q63nQg5c9rIi4/Z5lR5IVF7yU5MqmKaPOe0HSc0O2cX1fPi96sUQu5j7eo4gKCkB2AnNGoWt7y4/Xx3Kcqg==} + engines: {node: '>=18'} + hasBin: true + '@polka/url@1.0.0-next.29': resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} @@ -1670,6 +1681,11 @@ packages: resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==} engines: {node: '>= 6'} + fsevents@2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -1966,6 +1982,16 @@ packages: resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==} engines: {node: '>=12'} + playwright-core@1.59.1: + resolution: {integrity: sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg==} + engines: {node: '>=18'} + hasBin: true + + playwright@1.59.1: + resolution: {integrity: sha512-C8oWjPR3F81yljW9o5OxcWzfh6avkVwDD2VYdwIGqTkl+OGFISgypqzfu7dOe4QNLL2aqcWBmI3PMtLIK233lw==} + engines: {node: '>=18'} + hasBin: true + postcss@8.5.8: resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} engines: {node: ^10 || ^12 || >=14} @@ -2897,6 +2923,10 @@ snapshots: '@oxlint/binding-win32-x64-msvc@1.57.0': optional: true + '@playwright/test@1.59.1': + dependencies: + playwright: 1.59.1 + '@polka/url@1.0.0-next.29': {} '@rollup/pluginutils@5.3.0(rollup@4.60.0)': @@ -3633,6 +3663,9 @@ snapshots: hasown: 2.0.2 mime-types: 2.1.35 + fsevents@2.3.2: + optional: true + fsevents@2.3.3: optional: true @@ -3956,6 +3989,14 @@ snapshots: picomatch@4.0.4: {} + playwright-core@1.59.1: {} + + playwright@1.59.1: + dependencies: + playwright-core: 1.59.1 + optionalDependencies: + fsevents: 2.3.2 + postcss@8.5.8: dependencies: nanoid: 3.3.11 From 73947d805a48e0000c9395f04d9f93535f645544 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Mon, 13 Apr 2026 12:46:30 +0530 Subject: [PATCH 02/19] Copilots suggestions Signed-off-by: kumaradityaraj --- packages/playwright/README.md | 2 +- packages/playwright/package.json | 6 +++--- packages/playwright/playwright.config.ts | 2 +- packages/playwright/tests/diagram-editor.spec.ts | 7 +++++++ packages/playwright/tsconfig.json | 10 ++++++++++ pnpm-lock.yaml | 3 +++ 6 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 packages/playwright/tsconfig.json diff --git a/packages/playwright/README.md b/packages/playwright/README.md index 867f67f..a98c432 100644 --- a/packages/playwright/README.md +++ b/packages/playwright/README.md @@ -24,7 +24,7 @@ This document explains how to set up and run Playwright end-to-end (E2E) tests f - Configure Playwright in playwright.config.ts for the package which you want to write tests for. - Add an endpoint for that package and make sure it is the same port where the package/app starts. -- Navigate to tests folder and create a file with the package name which you want to write test for and write all the tests in it. +- Navigate to tests folder and create a file with the package name which you want to write tests for and write all the tests in it. ## Steps for testing diff --git a/packages/playwright/package.json b/packages/playwright/package.json index d15db5b..5f15c37 100644 --- a/packages/playwright/package.json +++ b/packages/playwright/package.json @@ -3,15 +3,15 @@ "version": "1.0.0", "description": "", "keywords": [], - "license": "ISC", + "license": "Apache-2.0", "author": "", - "main": "index.js", "scripts": { "test": "playwright test", "test:ui": "playwright test --ui" }, "devDependencies": { - "@playwright/test": "^1.59.1" + "@playwright/test": "^1.59.1", + "@types/node": "catalog:" }, "packageManager": "pnpm@10.31.0" } diff --git a/packages/playwright/playwright.config.ts b/packages/playwright/playwright.config.ts index 5016a39..82a12d2 100644 --- a/packages/playwright/playwright.config.ts +++ b/packages/playwright/playwright.config.ts @@ -27,7 +27,7 @@ export default defineConfig({ webServer: { command: "pnpm --filter @serverlessworkflow/diagram-editor start", url: "http://localhost:6006", - reuseExistingServer: true, + reuseExistingServer: !process.env.CI, timeout: 120 * 1000, }, }); diff --git a/packages/playwright/tests/diagram-editor.spec.ts b/packages/playwright/tests/diagram-editor.spec.ts index 3f6cf35..7000827 100644 --- a/packages/playwright/tests/diagram-editor.spec.ts +++ b/packages/playwright/tests/diagram-editor.spec.ts @@ -32,4 +32,11 @@ test("diagram editor renders correctly", async ({ page }) => { // Check total edges const edges = page.locator('[data-testid^="rf__edge-"]'); await expect(edges).toHaveCount(5); + + // Verify the diagram rendered at least one node and one edge + const nodesCount = page.locator('[data-testid^="rf__node-"]'); + await expect(await nodesCount.count()).toBeGreaterThan(0); + + const edgesCount = page.locator('[data-testid^="rf__edge-"]'); + await expect(await edgesCount.count()).toBeGreaterThan(0); }); diff --git a/packages/playwright/tsconfig.json b/packages/playwright/tsconfig.json new file mode 100644 index 0000000..33576e6 --- /dev/null +++ b/packages/playwright/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "types": ["node"], + "baseUrl": ".", + "declaration": true, + "declarationMap": true, + "sourceMap": true + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ca3d2ff..08323b4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -165,6 +165,9 @@ importers: '@playwright/test': specifier: ^1.59.1 version: 1.59.1 + '@types/node': + specifier: 'catalog:' + version: 25.5.0 packages/serverless-workflow-diagram-editor: dependencies: From 2ce68a65bca9912de17bce30cb6b539deadf0639 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Tue, 14 Apr 2026 14:35:06 +0530 Subject: [PATCH 03/19] shifting playwright in package itself Signed-off-by: kumaradityaraj --- .../package.json | 7 +++- .../playwright.config.ts | 34 +++++++++++++++ .../tests/e2e/diagram-editor.e2e.ts | 42 +++++++++++++++++++ .../vitest.config.ts | 1 + 4 files changed, 82 insertions(+), 2 deletions(-) create mode 100644 packages/serverless-workflow-diagram-editor/playwright.config.ts create mode 100644 packages/serverless-workflow-diagram-editor/tests/e2e/diagram-editor.e2e.ts diff --git a/packages/serverless-workflow-diagram-editor/package.json b/packages/serverless-workflow-diagram-editor/package.json index cfe9652..85ad29d 100644 --- a/packages/serverless-workflow-diagram-editor/package.json +++ b/packages/serverless-workflow-diagram-editor/package.json @@ -32,10 +32,12 @@ "clean": "rimraf ./dist", "clean:storybook": "rimraf ./dist-storybook", "build:dev": "pnpm clean && tsc -p tsconfig.json", - "build:prod": "pnpm lint && pnpm clean && tsc -p tsconfig.json && pnpm test", + "build:prod": "pnpm lint && pnpm clean && tsc -p tsconfig.json && pnpm test && pnpm test:e2e", "test": "vitest run --passWithNoTests", "start": "storybook dev -p 6006 --no-open", - "build:storybook": "pnpm clean:storybook && storybook build --output-dir ./dist-storybook" + "build:storybook": "pnpm clean:storybook && storybook build --output-dir ./dist-storybook", + "test:e2e": "playwright test", + "test:e2e:ui": "playwright test --ui" }, "dependencies": { "@serverlessworkflow/i18n": "workspace:*", @@ -45,6 +47,7 @@ }, "devDependencies": { "@chromatic-com/storybook": "catalog:", + "@playwright/test": "^1.59.1", "@storybook/addon-a11y": "catalog:", "@storybook/addon-docs": "catalog:", "@storybook/addon-vitest": "catalog:", diff --git a/packages/serverless-workflow-diagram-editor/playwright.config.ts b/packages/serverless-workflow-diagram-editor/playwright.config.ts new file mode 100644 index 0000000..0bcdc67 --- /dev/null +++ b/packages/serverless-workflow-diagram-editor/playwright.config.ts @@ -0,0 +1,34 @@ +/* + * Copyright 2021-Present The Serverless Workflow Specification Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { defineConfig } from "@playwright/test"; + +export default defineConfig({ + testDir: "./tests/e2e", + testMatch: "**/*.e2e.ts", + + use: { + baseURL: "http://localhost:6006", + headless: true, + }, + + webServer: { + command: "pnpm start", + url: "http://localhost:6006", + reuseExistingServer: !process.env.CI, + timeout: 120 * 1000, + }, +}); diff --git a/packages/serverless-workflow-diagram-editor/tests/e2e/diagram-editor.e2e.ts b/packages/serverless-workflow-diagram-editor/tests/e2e/diagram-editor.e2e.ts new file mode 100644 index 0000000..7000827 --- /dev/null +++ b/packages/serverless-workflow-diagram-editor/tests/e2e/diagram-editor.e2e.ts @@ -0,0 +1,42 @@ +/* + * Copyright 2021-Present The Serverless Workflow Specification Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { test, expect } from "@playwright/test"; + +test("diagram editor renders correctly", async ({ page }) => { + await page.goto("/iframe.html?id=example-diagrameditor--component"); + + // Wait for main container + await expect(page.getByTestId("diagram-container")).toBeVisible(); + + // Check at least one specific node + await expect(page.getByTestId("rf__node-n1")).toBeVisible(); + + // Check total nodes + const nodes = page.locator('[data-testid^="rf__node-"]'); + await expect(nodes).toHaveCount(5); + + // Check total edges + const edges = page.locator('[data-testid^="rf__edge-"]'); + await expect(edges).toHaveCount(5); + + // Verify the diagram rendered at least one node and one edge + const nodesCount = page.locator('[data-testid^="rf__node-"]'); + await expect(await nodesCount.count()).toBeGreaterThan(0); + + const edgesCount = page.locator('[data-testid^="rf__edge-"]'); + await expect(await edgesCount.count()).toBeGreaterThan(0); +}); diff --git a/packages/serverless-workflow-diagram-editor/vitest.config.ts b/packages/serverless-workflow-diagram-editor/vitest.config.ts index 7c514a6..45cc40c 100644 --- a/packages/serverless-workflow-diagram-editor/vitest.config.ts +++ b/packages/serverless-workflow-diagram-editor/vitest.config.ts @@ -29,5 +29,6 @@ export default defineConfig({ environment: "jsdom", setupFiles: ["./tests/setupTests.ts"], css: false, + // exclude: ["tests/e2e/**"], }, }); From 6711115e13b190af120aa46a37a470d843900611 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Tue, 14 Apr 2026 14:41:45 +0530 Subject: [PATCH 04/19] shifting playwright in package itself Signed-off-by: kumaradityaraj --- packages/playwright/README.md | 37 ---------------- packages/playwright/package.json | 17 -------- packages/playwright/playwright.config.ts | 33 --------------- .../playwright/tests/diagram-editor.spec.ts | 42 ------------------- packages/playwright/tsconfig.json | 10 ----- .../vitest.config.ts | 1 - pnpm-lock.yaml | 12 ++---- 7 files changed, 3 insertions(+), 149 deletions(-) delete mode 100644 packages/playwright/README.md delete mode 100644 packages/playwright/package.json delete mode 100644 packages/playwright/playwright.config.ts delete mode 100644 packages/playwright/tests/diagram-editor.spec.ts delete mode 100644 packages/playwright/tsconfig.json diff --git a/packages/playwright/README.md b/packages/playwright/README.md deleted file mode 100644 index a98c432..0000000 --- a/packages/playwright/README.md +++ /dev/null @@ -1,37 +0,0 @@ - - -# Playwright E2E Setup (Monorepo - pnpm) - -This document explains how to set up and run Playwright end-to-end (E2E) tests for packages inside this monorepo. - ---- - -## Configure Playwright - -- Configure Playwright in playwright.config.ts for the package which you want to write tests for. -- Add an endpoint for that package and make sure it is the same port where the package/app starts. -- Navigate to tests folder and create a file with the package name which you want to write tests for and write all the tests in it. - -## Steps for testing - -- Run the command for testing :- - - pnpm --filter @packageName test - - Eg- pnpm --filter @serverlessworkflow/playwright test - -- For testing it in UI :- - - pnpm --filter @packageName test:ui - - Eg- pnpm --filter @serverlessworkflow/playwright test:ui diff --git a/packages/playwright/package.json b/packages/playwright/package.json deleted file mode 100644 index 5f15c37..0000000 --- a/packages/playwright/package.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "@serverlessworkflow/playwright", - "version": "1.0.0", - "description": "", - "keywords": [], - "license": "Apache-2.0", - "author": "", - "scripts": { - "test": "playwright test", - "test:ui": "playwright test --ui" - }, - "devDependencies": { - "@playwright/test": "^1.59.1", - "@types/node": "catalog:" - }, - "packageManager": "pnpm@10.31.0" -} diff --git a/packages/playwright/playwright.config.ts b/packages/playwright/playwright.config.ts deleted file mode 100644 index 82a12d2..0000000 --- a/packages/playwright/playwright.config.ts +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright 2021-Present The Serverless Workflow Specification Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { defineConfig } from "@playwright/test"; - -export default defineConfig({ - testDir: "./tests", - - use: { - baseURL: "http://localhost:6006", - headless: true, - }, - - webServer: { - command: "pnpm --filter @serverlessworkflow/diagram-editor start", - url: "http://localhost:6006", - reuseExistingServer: !process.env.CI, - timeout: 120 * 1000, - }, -}); diff --git a/packages/playwright/tests/diagram-editor.spec.ts b/packages/playwright/tests/diagram-editor.spec.ts deleted file mode 100644 index 7000827..0000000 --- a/packages/playwright/tests/diagram-editor.spec.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright 2021-Present The Serverless Workflow Specification Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { test, expect } from "@playwright/test"; - -test("diagram editor renders correctly", async ({ page }) => { - await page.goto("/iframe.html?id=example-diagrameditor--component"); - - // Wait for main container - await expect(page.getByTestId("diagram-container")).toBeVisible(); - - // Check at least one specific node - await expect(page.getByTestId("rf__node-n1")).toBeVisible(); - - // Check total nodes - const nodes = page.locator('[data-testid^="rf__node-"]'); - await expect(nodes).toHaveCount(5); - - // Check total edges - const edges = page.locator('[data-testid^="rf__edge-"]'); - await expect(edges).toHaveCount(5); - - // Verify the diagram rendered at least one node and one edge - const nodesCount = page.locator('[data-testid^="rf__node-"]'); - await expect(await nodesCount.count()).toBeGreaterThan(0); - - const edgesCount = page.locator('[data-testid^="rf__edge-"]'); - await expect(await edgesCount.count()).toBeGreaterThan(0); -}); diff --git a/packages/playwright/tsconfig.json b/packages/playwright/tsconfig.json deleted file mode 100644 index 33576e6..0000000 --- a/packages/playwright/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "compilerOptions": { - "types": ["node"], - "baseUrl": ".", - "declaration": true, - "declarationMap": true, - "sourceMap": true - } -} diff --git a/packages/serverless-workflow-diagram-editor/vitest.config.ts b/packages/serverless-workflow-diagram-editor/vitest.config.ts index 45cc40c..7c514a6 100644 --- a/packages/serverless-workflow-diagram-editor/vitest.config.ts +++ b/packages/serverless-workflow-diagram-editor/vitest.config.ts @@ -29,6 +29,5 @@ export default defineConfig({ environment: "jsdom", setupFiles: ["./tests/setupTests.ts"], css: false, - // exclude: ["tests/e2e/**"], }, }); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 08323b4..f155253 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -160,15 +160,6 @@ importers: specifier: 'catalog:' version: 4.1.2(@types/node@25.5.0)(@vitest/ui@4.1.2)(jsdom@25.0.1)(vite@6.4.1(@types/node@25.5.0)(yaml@2.8.3)) - packages/playwright: - devDependencies: - '@playwright/test': - specifier: ^1.59.1 - version: 1.59.1 - '@types/node': - specifier: 'catalog:' - version: 25.5.0 - packages/serverless-workflow-diagram-editor: dependencies: '@serverlessworkflow/i18n': @@ -187,6 +178,9 @@ importers: '@chromatic-com/storybook': specifier: 'catalog:' version: 5.1.1(storybook@10.3.4(@testing-library/dom@10.4.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) + '@playwright/test': + specifier: ^1.59.1 + version: 1.59.1 '@storybook/addon-a11y': specifier: 'catalog:' version: 10.3.4(storybook@10.3.4(@testing-library/dom@10.4.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) From d3c1db3b08522c4c9eb411aae0d4d47ce108ffac Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Tue, 14 Apr 2026 14:50:29 +0530 Subject: [PATCH 05/19] Installing playwright in ci and playwright as catalog Signed-off-by: kumaradityaraj --- .github/workflows/ci_build.yaml | 8 ++++++++ packages/serverless-workflow-diagram-editor/package.json | 2 +- pnpm-lock.yaml | 5 ++++- pnpm-workspace.yaml | 1 + 4 files changed, 14 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci_build.yaml b/.github/workflows/ci_build.yaml index 39dd78f..86df543 100644 --- a/.github/workflows/ci_build.yaml +++ b/.github/workflows/ci_build.yaml @@ -62,5 +62,13 @@ jobs: - name: Check for dependency mismatches run: pnpm dependencies:check + - name: Install Playwright browsers (Linux) + if: matrix.os == 'ubuntu-latest' + run: pnpm exec playwright install --with-deps + + - name: Install Playwright browsers (macOS/Windows) + if: matrix.os != 'ubuntu-latest' + run: pnpm exec playwright install + - name: Build and test run: pnpm build:prod diff --git a/packages/serverless-workflow-diagram-editor/package.json b/packages/serverless-workflow-diagram-editor/package.json index 85ad29d..4fe4449 100644 --- a/packages/serverless-workflow-diagram-editor/package.json +++ b/packages/serverless-workflow-diagram-editor/package.json @@ -47,7 +47,7 @@ }, "devDependencies": { "@chromatic-com/storybook": "catalog:", - "@playwright/test": "^1.59.1", + "@playwright/test": "catalog:", "@storybook/addon-a11y": "catalog:", "@storybook/addon-docs": "catalog:", "@storybook/addon-vitest": "catalog:", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f155253..3036570 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,6 +9,9 @@ catalogs: '@chromatic-com/storybook': specifier: ^5.0.1 version: 5.1.1 + '@playwright/test': + specifier: ^1.59.1 + version: 1.59.1 '@serverlessworkflow/sdk': specifier: ^1.0.1 version: 1.0.1 @@ -179,7 +182,7 @@ importers: specifier: 'catalog:' version: 5.1.1(storybook@10.3.4(@testing-library/dom@10.4.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) '@playwright/test': - specifier: ^1.59.1 + specifier: 'catalog:' version: 1.59.1 '@storybook/addon-a11y': specifier: 'catalog:' diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 610fc93..5069a8b 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -16,6 +16,7 @@ catalog: "@types/node": ^25.5.0 "@types/react": ^19.2.14 "@types/react-dom": ^19.2.3 + "@playwright/test": ^1.59.1 "@vitest/coverage-v8": ^4.1.0 "@vitest/ui": ^4.1.0 "@xyflow/react": ^12.10.1 From 114c17ea00b3e965e003a078a32680af928251ea Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Tue, 14 Apr 2026 14:55:20 +0530 Subject: [PATCH 06/19] resolving playwright installation Signed-off-by: kumaradityaraj --- .github/workflows/ci_build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci_build.yaml b/.github/workflows/ci_build.yaml index 86df543..c57eb18 100644 --- a/.github/workflows/ci_build.yaml +++ b/.github/workflows/ci_build.yaml @@ -64,11 +64,11 @@ jobs: - name: Install Playwright browsers (Linux) if: matrix.os == 'ubuntu-latest' - run: pnpm exec playwright install --with-deps + run: pnpm -r --if-present exec playwright install --with-deps - name: Install Playwright browsers (macOS/Windows) if: matrix.os != 'ubuntu-latest' - run: pnpm exec playwright install + run: pnpm -r --if-present exec playwright install - name: Build and test run: pnpm build:prod From 50414a3b9914c80c2b8653b8d83b2de2b153c8cb Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Tue, 14 Apr 2026 14:59:49 +0530 Subject: [PATCH 07/19] resolving playwright installation Signed-off-by: kumaradityaraj --- .github/workflows/ci_build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci_build.yaml b/.github/workflows/ci_build.yaml index c57eb18..d13fba1 100644 --- a/.github/workflows/ci_build.yaml +++ b/.github/workflows/ci_build.yaml @@ -64,11 +64,11 @@ jobs: - name: Install Playwright browsers (Linux) if: matrix.os == 'ubuntu-latest' - run: pnpm -r --if-present exec playwright install --with-deps + run: pnpm -r --if-present run playwright install --with-deps - name: Install Playwright browsers (macOS/Windows) if: matrix.os != 'ubuntu-latest' - run: pnpm -r --if-present exec playwright install + run: pnpm -r --if-present run playwright install - name: Build and test run: pnpm build:prod From d2f98b3a2c38aee183d35722525744629021da93 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Tue, 14 Apr 2026 15:03:31 +0530 Subject: [PATCH 08/19] removing playwright from ci Signed-off-by: kumaradityaraj --- .github/workflows/ci_build.yaml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/.github/workflows/ci_build.yaml b/.github/workflows/ci_build.yaml index d13fba1..39dd78f 100644 --- a/.github/workflows/ci_build.yaml +++ b/.github/workflows/ci_build.yaml @@ -62,13 +62,5 @@ jobs: - name: Check for dependency mismatches run: pnpm dependencies:check - - name: Install Playwright browsers (Linux) - if: matrix.os == 'ubuntu-latest' - run: pnpm -r --if-present run playwright install --with-deps - - - name: Install Playwright browsers (macOS/Windows) - if: matrix.os != 'ubuntu-latest' - run: pnpm -r --if-present run playwright install - - name: Build and test run: pnpm build:prod From d2546ee89a719176089af85d2411e202db461456 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Tue, 14 Apr 2026 15:46:15 +0530 Subject: [PATCH 09/19] Fixing CI for playwright Signed-off-by: kumaradityaraj --- .github/workflows/ci_build.yaml | 8 ++++++++ package.json | 5 ++++- pnpm-lock.yaml | 3 +++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci_build.yaml b/.github/workflows/ci_build.yaml index 39dd78f..7dd9c38 100644 --- a/.github/workflows/ci_build.yaml +++ b/.github/workflows/ci_build.yaml @@ -59,6 +59,14 @@ jobs: - name: Install dependencies run: pnpm install --frozen-lockfile + - name: Install Playwright browsers + if: matrix.os == 'ubuntu-latest' + run: pnpm playwright:install:ci + + - name: Install Playwright browsers (macOS/Windows) + if: matrix.os != 'ubuntu-latest' + run: pnpm playwright:install + - name: Check for dependency mismatches run: pnpm dependencies:check diff --git a/package.json b/package.json index 530a8bb..7b948a7 100644 --- a/package.json +++ b/package.json @@ -20,9 +20,12 @@ "format:check": "oxfmt --config .oxfmtrc.json --check", "build:prod": "pnpm -r --stream --if-present build:prod", "build:dev": "pnpm -r --stream --if-present build:dev", - "prepare": "husky" + "prepare": "husky", + "playwright:install": "playwright install", + "playwright:install:ci": "playwright install --with-deps" }, "devDependencies": { + "@playwright/test": "catalog:", "husky": "catalog:", "lint-staged": "catalog:", "oxfmt": "catalog:", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3036570..871b265 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -110,6 +110,9 @@ importers: .: devDependencies: + '@playwright/test': + specifier: 'catalog:' + version: 1.59.1 husky: specifier: 'catalog:' version: 9.1.7 From d9dd92d365315428680bbcb9cb1f1bd4029f8374 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Wed, 15 Apr 2026 16:47:31 +0530 Subject: [PATCH 10/19] Resolving suggestions e2e Signed-off-by: kumaradityaraj --- .gitignore | 5 ++--- packages/serverless-workflow-diagram-editor/package.json | 6 +++--- .../playwright.config.ts | 3 +-- .../{tests/e2e => tests-e2e}/diagram-editor.e2e.ts | 9 +-------- 4 files changed, 7 insertions(+), 16 deletions(-) rename packages/serverless-workflow-diagram-editor/{tests/e2e => tests-e2e}/diagram-editor.e2e.ts (75%) diff --git a/.gitignore b/.gitignore index 37255c6..c011c0f 100644 --- a/.gitignore +++ b/.gitignore @@ -177,6 +177,5 @@ vite.config.ts.timestamp-* .rat-reports # playwright test results -test-results/ -playwright-report/ -blob-report/ \ No newline at end of file +**/test-results/ +**/playwright-report/ \ No newline at end of file diff --git a/packages/serverless-workflow-diagram-editor/package.json b/packages/serverless-workflow-diagram-editor/package.json index 5308984..3c6c053 100644 --- a/packages/serverless-workflow-diagram-editor/package.json +++ b/packages/serverless-workflow-diagram-editor/package.json @@ -32,12 +32,12 @@ "clean": "rimraf ./dist", "clean:storybook": "rimraf ./dist-storybook", "build:dev": "pnpm clean && tsc -p tsconfig.json", - "build:prod": "pnpm lint && pnpm clean && tsc -p tsconfig.json && pnpm test && pnpm test:e2e", + "build:prod": "pnpm lint && pnpm clean && tsc -p tsconfig.json && pnpm test && pnpm test-e2e", "test": "vitest run --passWithNoTests", "start": "storybook dev -p 6006 --no-open", "build:storybook": "pnpm clean:storybook && storybook build --output-dir ./dist-storybook", - "test:e2e": "playwright test", - "test:e2e:ui": "playwright test --ui" + "test-e2e": "playwright test", + "test-e2e:ui": "playwright test --ui" }, "dependencies": { "@serverlessworkflow/i18n": "workspace:*", diff --git a/packages/serverless-workflow-diagram-editor/playwright.config.ts b/packages/serverless-workflow-diagram-editor/playwright.config.ts index 0bcdc67..b7c5c9c 100644 --- a/packages/serverless-workflow-diagram-editor/playwright.config.ts +++ b/packages/serverless-workflow-diagram-editor/playwright.config.ts @@ -17,12 +17,11 @@ import { defineConfig } from "@playwright/test"; export default defineConfig({ - testDir: "./tests/e2e", + testDir: "./tests-e2e", testMatch: "**/*.e2e.ts", use: { baseURL: "http://localhost:6006", - headless: true, }, webServer: { diff --git a/packages/serverless-workflow-diagram-editor/tests/e2e/diagram-editor.e2e.ts b/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.e2e.ts similarity index 75% rename from packages/serverless-workflow-diagram-editor/tests/e2e/diagram-editor.e2e.ts rename to packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.e2e.ts index 7000827..43308d5 100644 --- a/packages/serverless-workflow-diagram-editor/tests/e2e/diagram-editor.e2e.ts +++ b/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.e2e.ts @@ -23,7 +23,7 @@ test("diagram editor renders correctly", async ({ page }) => { await expect(page.getByTestId("diagram-container")).toBeVisible(); // Check at least one specific node - await expect(page.getByTestId("rf__node-n1")).toBeVisible(); + await expect(page.getByTestId("rf__node-n1")).toContainText("Node 1"); // Check total nodes const nodes = page.locator('[data-testid^="rf__node-"]'); @@ -32,11 +32,4 @@ test("diagram editor renders correctly", async ({ page }) => { // Check total edges const edges = page.locator('[data-testid^="rf__edge-"]'); await expect(edges).toHaveCount(5); - - // Verify the diagram rendered at least one node and one edge - const nodesCount = page.locator('[data-testid^="rf__node-"]'); - await expect(await nodesCount.count()).toBeGreaterThan(0); - - const edgesCount = page.locator('[data-testid^="rf__edge-"]'); - await expect(await edgesCount.count()).toBeGreaterThan(0); }); From 42ae8223ef8c47913267259927f81d66cacdab91 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Wed, 15 Apr 2026 17:33:06 +0530 Subject: [PATCH 11/19] adding playwright artifact in CI Signed-off-by: kumaradityaraj --- .github/workflows/ci_build.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/ci_build.yaml b/.github/workflows/ci_build.yaml index 7dd9c38..2d7d29a 100644 --- a/.github/workflows/ci_build.yaml +++ b/.github/workflows/ci_build.yaml @@ -72,3 +72,13 @@ jobs: - name: Build and test run: pnpm build:prod + + - name: Upload Playwright Artifacts + if: failure() + uses: actions/upload-artifact@v4 + with: + name: playwright-${{ matrix.os }} + path: | + packages/**/playwright-report/ + packages/**/test-results/ + retention-days: 30 From 96bf196d62d73b71c5cd6cb588bfe1cd04707ee3 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Thu, 16 Apr 2026 13:23:35 +0530 Subject: [PATCH 12/19] Refix fab comments for title Signed-off-by: kumaradityaraj --- .../serverless-workflow-diagram-editor/playwright.config.ts | 4 ++-- .../stories/DiagramEditor.stories.ts | 3 ++- .../{diagram-editor.e2e.ts => diagram-editor.spec.ts} | 2 +- packages/serverless-workflow-diagram-editor/vitest.config.ts | 1 + 4 files changed, 6 insertions(+), 4 deletions(-) rename packages/serverless-workflow-diagram-editor/tests-e2e/{diagram-editor.e2e.ts => diagram-editor.spec.ts} (94%) diff --git a/packages/serverless-workflow-diagram-editor/playwright.config.ts b/packages/serverless-workflow-diagram-editor/playwright.config.ts index b7c5c9c..8fada49 100644 --- a/packages/serverless-workflow-diagram-editor/playwright.config.ts +++ b/packages/serverless-workflow-diagram-editor/playwright.config.ts @@ -17,8 +17,8 @@ import { defineConfig } from "@playwright/test"; export default defineConfig({ - testDir: "./tests-e2e", - testMatch: "**/*.e2e.ts", + testDir: "tests-e2e", + // testMatch: "**/*.e2e.ts", use: { baseURL: "http://localhost:6006", diff --git a/packages/serverless-workflow-diagram-editor/stories/DiagramEditor.stories.ts b/packages/serverless-workflow-diagram-editor/stories/DiagramEditor.stories.ts index 5576dcc..3ee5756 100644 --- a/packages/serverless-workflow-diagram-editor/stories/DiagramEditor.stories.ts +++ b/packages/serverless-workflow-diagram-editor/stories/DiagramEditor.stories.ts @@ -19,7 +19,8 @@ import type { Meta, StoryObj } from "@storybook/react-vite"; import { DiagramEditor } from "./DiagramEditor"; const meta = { - title: "Example/DiagramEditor", + // id: "diagram-editor", + title: "Example/Diagram-Editor", component: DiagramEditor, // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/writing-docs/autodocs tags: ["autodocs"], diff --git a/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.e2e.ts b/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts similarity index 94% rename from packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.e2e.ts rename to packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts index 43308d5..97e3907 100644 --- a/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.e2e.ts +++ b/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts @@ -17,7 +17,7 @@ import { test, expect } from "@playwright/test"; test("diagram editor renders correctly", async ({ page }) => { - await page.goto("/iframe.html?id=example-diagrameditor--component"); + await page.goto("/iframe.html?id=example-diagram-editor--component"); // Wait for main container await expect(page.getByTestId("diagram-container")).toBeVisible(); diff --git a/packages/serverless-workflow-diagram-editor/vitest.config.ts b/packages/serverless-workflow-diagram-editor/vitest.config.ts index 07474b8..9db56e1 100644 --- a/packages/serverless-workflow-diagram-editor/vitest.config.ts +++ b/packages/serverless-workflow-diagram-editor/vitest.config.ts @@ -25,5 +25,6 @@ export default defineConfig({ environment: "jsdom", setupFiles: ["./tests/setupTests.ts"], css: false, + exclude: ["tests-e2e", "node_modules", "dist"], }, }); From 914682a2c830d06257c10a808478cd7457944bcc Mon Sep 17 00:00:00 2001 From: fantonangeli Date: Thu, 16 Apr 2026 10:10:53 +0200 Subject: [PATCH 13/19] Fix comment: https://github.com/serverlessworkflow/editor/pull/60#discussion_r3091564735 Signed-off-by: fantonangeli --- .../stories/DiagramEditor.stories.ts | 2 +- .../tests-e2e/diagram-editor.spec.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/serverless-workflow-diagram-editor/stories/DiagramEditor.stories.ts b/packages/serverless-workflow-diagram-editor/stories/DiagramEditor.stories.ts index 3ee5756..21ccbb1 100644 --- a/packages/serverless-workflow-diagram-editor/stories/DiagramEditor.stories.ts +++ b/packages/serverless-workflow-diagram-editor/stories/DiagramEditor.stories.ts @@ -19,7 +19,7 @@ import type { Meta, StoryObj } from "@storybook/react-vite"; import { DiagramEditor } from "./DiagramEditor"; const meta = { - // id: "diagram-editor", + id: "diagram-editor", title: "Example/Diagram-Editor", component: DiagramEditor, // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/writing-docs/autodocs diff --git a/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts b/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts index 97e3907..ecd525e 100644 --- a/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts +++ b/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts @@ -17,7 +17,7 @@ import { test, expect } from "@playwright/test"; test("diagram editor renders correctly", async ({ page }) => { - await page.goto("/iframe.html?id=example-diagram-editor--component"); + await page.goto("/iframe.html?id=diagram-editor--component"); // Wait for main container await expect(page.getByTestId("diagram-container")).toBeVisible(); From 919ef937ac3b480fde210468882cf1567cf6f11e Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Thu, 16 Apr 2026 14:13:27 +0530 Subject: [PATCH 14/19] small fix Signed-off-by: kumaradityaraj --- .../serverless-workflow-diagram-editor/playwright.config.ts | 1 - packages/serverless-workflow-diagram-editor/vitest.config.ts | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/serverless-workflow-diagram-editor/playwright.config.ts b/packages/serverless-workflow-diagram-editor/playwright.config.ts index 8fada49..46b132d 100644 --- a/packages/serverless-workflow-diagram-editor/playwright.config.ts +++ b/packages/serverless-workflow-diagram-editor/playwright.config.ts @@ -18,7 +18,6 @@ import { defineConfig } from "@playwright/test"; export default defineConfig({ testDir: "tests-e2e", - // testMatch: "**/*.e2e.ts", use: { baseURL: "http://localhost:6006", diff --git a/packages/serverless-workflow-diagram-editor/vitest.config.ts b/packages/serverless-workflow-diagram-editor/vitest.config.ts index 9db56e1..f2bf001 100644 --- a/packages/serverless-workflow-diagram-editor/vitest.config.ts +++ b/packages/serverless-workflow-diagram-editor/vitest.config.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { defineConfig } from "vitest/config"; +import { defineConfig, configDefaults } from "vitest/config"; export default defineConfig({ resolve: { @@ -25,6 +25,6 @@ export default defineConfig({ environment: "jsdom", setupFiles: ["./tests/setupTests.ts"], css: false, - exclude: ["tests-e2e", "node_modules", "dist"], + exclude: [...configDefaults.exclude, "**/tests-e2e/**"], }, }); From 87ba61a14b9b13befab022dd3d8494f9ee697d3e Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Thu, 16 Apr 2026 14:37:21 +0530 Subject: [PATCH 15/19] CI testing Signed-off-by: kumaradityaraj --- .github/workflows/ci_build.yaml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/ci_build.yaml b/.github/workflows/ci_build.yaml index 2d7d29a..3e916a1 100644 --- a/.github/workflows/ci_build.yaml +++ b/.github/workflows/ci_build.yaml @@ -60,13 +60,8 @@ jobs: run: pnpm install --frozen-lockfile - name: Install Playwright browsers - if: matrix.os == 'ubuntu-latest' run: pnpm playwright:install:ci - - name: Install Playwright browsers (macOS/Windows) - if: matrix.os != 'ubuntu-latest' - run: pnpm playwright:install - - name: Check for dependency mismatches run: pnpm dependencies:check From b1c8e89490242c8523dc3da6119528577e5255cb Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Thu, 16 Apr 2026 14:42:49 +0530 Subject: [PATCH 16/19] Testing package.json Signed-off-by: kumaradityaraj --- package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/package.json b/package.json index 0469214..6603814 100644 --- a/package.json +++ b/package.json @@ -21,8 +21,7 @@ "build:prod": "pnpm -r --stream --if-present build:prod", "build:dev": "pnpm -r --stream --if-present build:dev", "prepare": "husky", - "playwright:install": "playwright install", - "playwright:install:ci": "playwright install --with-deps" + "playwright:install": "playwright install --with-deps" }, "devDependencies": { "@playwright/test": "catalog:", From 37496a7d1f07d3bb670b0f23ac0743eb8f268f16 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Thu, 16 Apr 2026 14:51:19 +0530 Subject: [PATCH 17/19] Testing package.json Signed-off-by: kumaradityaraj --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 6603814..5ba2d67 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "build:prod": "pnpm -r --stream --if-present build:prod", "build:dev": "pnpm -r --stream --if-present build:dev", "prepare": "husky", - "playwright:install": "playwright install --with-deps" + "playwright:install:ci": "playwright install --with-deps" }, "devDependencies": { "@playwright/test": "catalog:", From 8905153c523a2769014b6244447d380276398803 Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Fri, 17 Apr 2026 13:49:12 +0530 Subject: [PATCH 18/19] corrected vitest config Signed-off-by: kumaradityaraj --- packages/serverless-workflow-diagram-editor/vitest.config.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/serverless-workflow-diagram-editor/vitest.config.ts b/packages/serverless-workflow-diagram-editor/vitest.config.ts index f2bf001..be65758 100644 --- a/packages/serverless-workflow-diagram-editor/vitest.config.ts +++ b/packages/serverless-workflow-diagram-editor/vitest.config.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { defineConfig, configDefaults } from "vitest/config"; +import { defineConfig } from "vitest/config"; export default defineConfig({ resolve: { @@ -25,6 +25,6 @@ export default defineConfig({ environment: "jsdom", setupFiles: ["./tests/setupTests.ts"], css: false, - exclude: [...configDefaults.exclude, "**/tests-e2e/**"], + include: ["tests/**/*.test.ts", "tests/**/*.test.tsx"], }, }); From f765289bdd3d658602b62d1ee62240565aa5611a Mon Sep 17 00:00:00 2001 From: kumaradityaraj Date: Wed, 22 Apr 2026 15:06:47 +0530 Subject: [PATCH 19/19] dummy commmit Signed-off-by: kumaradityaraj --- .../tests-e2e/diagram-editor.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts b/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts index ecd525e..56e7ee0 100644 --- a/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts +++ b/packages/serverless-workflow-diagram-editor/tests-e2e/diagram-editor.spec.ts @@ -29,7 +29,7 @@ test("diagram editor renders correctly", async ({ page }) => { const nodes = page.locator('[data-testid^="rf__node-"]'); await expect(nodes).toHaveCount(5); - // Check total edges + // Check total edge const edges = page.locator('[data-testid^="rf__edge-"]'); await expect(edges).toHaveCount(5); });