diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 482fcddba..fb0c50b6d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -153,10 +153,7 @@ jobs: -v "$PWD"/etc:/app/etc \ fider-image - run: npm ci - - run: | - sudo apt-get update - sudo apt-get install -y libasound2t64 - npx playwright install-deps $BROWSER + - run: npx playwright install --with-deps $BROWSER env: BROWSER: ${{ matrix.browser }} - run: make test-e2e-ui @@ -212,7 +209,7 @@ jobs: -v "$PWD"/etc:/app/etc \ fider-image - run: npm ci - - run: npx playwright install-deps chromium + - run: npx playwright install --with-deps chromium env: BROWSER: chromium - run: make test-e2e-server diff --git a/e2e/setup.ts b/e2e/setup.ts index ae66163a3..4ff69bc9d 100644 --- a/e2e/setup.ts +++ b/e2e/setup.ts @@ -1,6 +1,6 @@ import { Before, BeforeAll, AfterAll, After } from "@cucumber/cucumber" import debug from "debug" -import * as playwright from "playwright" +import * as playwright from "@playwright/test" import { getLatestLinkSentTo } from "./step_definitions/fns" import { FiderWorld } from "./world" diff --git a/e2e/step_definitions/fns.ts b/e2e/step_definitions/fns.ts index e0ced342b..03096b022 100644 --- a/e2e/step_definitions/fns.ts +++ b/e2e/step_definitions/fns.ts @@ -1,4 +1,4 @@ -import { Page } from "playwright" +import { Page } from "@playwright/test" export function delay(ms: number) { return new Promise((resolve) => setTimeout(resolve, ms)) diff --git a/e2e/world.ts b/e2e/world.ts index a5def6cf8..b0932c8a9 100644 --- a/e2e/world.ts +++ b/e2e/world.ts @@ -1,5 +1,5 @@ import { World as CucumberWorld } from "@cucumber/cucumber" -import { Page } from "playwright" +import { Page } from "@playwright/test" export interface FiderWorld extends CucumberWorld { tenantName: string diff --git a/package-lock.json b/package-lock.json index 90c0acc14..78be7dd1b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,6 +25,7 @@ "@lingui/cli": "3.13.3", "@lingui/loader": "3.13.3", "@lingui/macro": "3.13.3", + "@playwright/test": "1.48", "@testing-library/jest-dom": "5.16.4", "@testing-library/react": "12.1.5", "@types/debug": "4.1.7", @@ -54,7 +55,6 @@ "jest": "28.1.0", "jest-environment-jsdom": "28.1.0", "mini-css-extract-plugin": "2.6.0", - "playwright": "1.29.2", "prettier": "2.6.2", "purgecss-webpack-plugin": "4.1.3", "sass": "1.51.0", @@ -3317,6 +3317,54 @@ "node": ">= 8" } }, + "node_modules/@playwright/test": { + "version": "1.48.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.2.tgz", + "integrity": "sha512-54w1xCWfXuax7dz4W2M9uw0gDyh+ti/0K/MxcCUxChFh37kkdxPdfZDw5QBbuPUJHr1CiHJ1hXgSs+GgeQc5Zw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "playwright": "1.48.2" + }, + "bin": { + "playwright": "cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@playwright/test/node_modules/playwright": { + "version": "1.48.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.2.tgz", + "integrity": "sha512-NjYvYgp4BPmiwfe31j4gHLa3J7bD2WiBz8Lk2RoSsmX38SVIARZ18VYjxLjAcDsAhA+F4iSEXTSGgjua0rrlgQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "playwright-core": "1.48.2" + }, + "bin": { + "playwright": "cli.js" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "fsevents": "2.3.2" + } + }, + "node_modules/@playwright/test/node_modules/playwright-core": { + "version": "1.48.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.2.tgz", + "integrity": "sha512-sjjw+qrLFlriJo64du+EK0kJgZzoQPsabGF4lBvsid+3CNIZIYLgnMj9V6JY5VhM2Peh20DJWIVpVljLLnlawA==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "playwright-core": "cli.js" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/@polka/url": { "version": "1.0.0-next.21", "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", @@ -12542,34 +12590,6 @@ "node": ">=4" } }, - "node_modules/playwright": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.29.2.tgz", - "integrity": "sha512-hKBYJUtdmYzcjdhYDkP9WGtORwwZBBKAW8+Lz7sr0ZMxtJr04ASXVzH5eBWtDkdb0c3LLFsehfPBTRfvlfKJOA==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "playwright-core": "1.29.2" - }, - "bin": { - "playwright": "cli.js" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/playwright-core": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.29.2.tgz", - "integrity": "sha512-94QXm4PMgFoHAhlCuoWyaBYKb92yOcGVHdQLoxQ7Wjlc7Flg4aC/jbFW7xMR52OfXMVkWicue4WXE7QEegbIRA==", - "dev": true, - "bin": { - "playwright": "cli.js" - }, - "engines": { - "node": ">=14" - } - }, "node_modules/plurals-cldr": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/plurals-cldr/-/plurals-cldr-1.0.4.tgz", @@ -18444,6 +18464,33 @@ "fastq": "^1.6.0" } }, + "@playwright/test": { + "version": "1.48.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.2.tgz", + "integrity": "sha512-54w1xCWfXuax7dz4W2M9uw0gDyh+ti/0K/MxcCUxChFh37kkdxPdfZDw5QBbuPUJHr1CiHJ1hXgSs+GgeQc5Zw==", + "dev": true, + "requires": { + "playwright": "1.48.2" + }, + "dependencies": { + "playwright": { + "version": "1.48.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.2.tgz", + "integrity": "sha512-NjYvYgp4BPmiwfe31j4gHLa3J7bD2WiBz8Lk2RoSsmX38SVIARZ18VYjxLjAcDsAhA+F4iSEXTSGgjua0rrlgQ==", + "dev": true, + "requires": { + "fsevents": "2.3.2", + "playwright-core": "1.48.2" + } + }, + "playwright-core": { + "version": "1.48.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.2.tgz", + "integrity": "sha512-sjjw+qrLFlriJo64du+EK0kJgZzoQPsabGF4lBvsid+3CNIZIYLgnMj9V6JY5VhM2Peh20DJWIVpVljLLnlawA==", + "dev": true + } + } + }, "@polka/url": { "version": "1.0.0-next.21", "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", @@ -25427,21 +25474,6 @@ } } }, - "playwright": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.29.2.tgz", - "integrity": "sha512-hKBYJUtdmYzcjdhYDkP9WGtORwwZBBKAW8+Lz7sr0ZMxtJr04ASXVzH5eBWtDkdb0c3LLFsehfPBTRfvlfKJOA==", - "dev": true, - "requires": { - "playwright-core": "1.29.2" - } - }, - "playwright-core": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.29.2.tgz", - "integrity": "sha512-94QXm4PMgFoHAhlCuoWyaBYKb92yOcGVHdQLoxQ7Wjlc7Flg4aC/jbFW7xMR52OfXMVkWicue4WXE7QEegbIRA==", - "dev": true - }, "plurals-cldr": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/plurals-cldr/-/plurals-cldr-1.0.4.tgz", diff --git a/package.json b/package.json index 62d2f2b42..d29460905 100644 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "@lingui/cli": "3.13.3", "@lingui/loader": "3.13.3", "@lingui/macro": "3.13.3", + "@playwright/test": "1.48", "@testing-library/jest-dom": "5.16.4", "@testing-library/react": "12.1.5", "@types/debug": "4.1.7", @@ -50,7 +51,6 @@ "jest": "28.1.0", "jest-environment-jsdom": "28.1.0", "mini-css-extract-plugin": "2.6.0", - "playwright": "1.29.2", "prettier": "2.6.2", "purgecss-webpack-plugin": "4.1.3", "sass": "1.51.0",