Skip to content

Commit 394582c

Browse files
chore(deps): update dependency @playwright/test to v1.60.0 (#829)
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [@playwright/test](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`1.59.1` → `1.60.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.59.1/1.60.0) | ![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.60.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.59.1/1.60.0?slim=true) | --- > [!WARNING] > Some dependencies could not be looked up. Check the [Dependency Dashboard](../issues/316) for more information. --- ### Release Notes <details> <summary>microsoft/playwright (@&#8203;playwright/test)</summary> ### [`v1.60.0`](https://redirect.github.com/microsoft/playwright/releases/tag/v1.60.0) [Compare Source](https://redirect.github.com/microsoft/playwright/compare/v1.59.1...v1.60.0) #### 🌐 HAR recording on Tracing [tracing.startHar()](https://playwright.dev/docs/api/class-tracing#tracing-start-har) / [tracing.stopHar()](https://playwright.dev/docs/api/class-tracing#tracing-stop-har) expose HAR recording as a first-class tracing API, with the same `content`, `mode` and `urlFilter` options as `recordHar`. The returned [Disposable](https://playwright.dev/docs/api/class-disposable) makes it easy to scope a recording with `await using`: ```js await using har = await context.tracing.startHar('trace.har'); const page = await context.newPage(); await page.goto('https://playwright.dev'); // HAR is finalized when `har` goes out of scope. ``` #### 🪝 Drop API New [locator.drop()](https://playwright.dev/docs/api/class-locator#locator-drop) simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches `dragenter`, `dragover`, and `drop` with a synthetic \[DataTransfer] in the page context — works cross-browser and is great for testing upload zones: ```js await page.locator('#dropzone').drop({ files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') }, }); await page.locator('#dropzone').drop({ data: { 'text/plain': 'hello world', 'text/uri-list': 'https://example.com', }, }); ``` #### 🎯 Aria snapshots - [expect(page).toMatchAriaSnapshot()](https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot) now works on a [Page](https://playwright.dev/docs/api/class-page), in addition to a [Locator](https://playwright.dev/docs/api/class-locator) — equivalent to asserting against `page.locator('body')`. - New `boxes` option on [locator.ariaSnapshot()](https://playwright.dev/docs/api/class-locator#locator-aria-snapshot) / [page.ariaSnapshot()](https://playwright.dev/docs/api/class-page#page-aria-snapshot) appends each element's bounding box as `[box=x,y,width,height]`, useful for AI consumption. #### 🛑 test.abort() New [test.abort()](https://playwright.dev/docs/api/class-test#test-abort) aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away: ```js test('does not publish to the shared page', async ({ page }) => { await page.route('**/publish', route => { test.abort('Tests must not publish to the shared page. Use the `clone` option.'); return route.abort(); }); // ... }); ``` #### New APIs ##### Browser, Context and Page - Event [browser.on('context')](https://playwright.dev/docs/api/class-browser#browser-event-context) — fired when a new context is created on the browser. - [BrowserContext](https://playwright.dev/docs/api/class-browsercontext) now mirrors lifecycle events from its pages: [browserContext.on('download')](https://playwright.dev/docs/api/class-browsercontext#browser-context-event-download), [browserContext.on('frameattached')](https://playwright.dev/docs/api/class-browsercontext#browser-context-event-frame-attached), [browserContext.on('framedetached')](https://playwright.dev/docs/api/class-browsercontext#browser-context-event-frame-detached), [browserContext.on('framenavigated')](https://playwright.dev/docs/api/class-browsercontext#browser-context-event-frame-navigated), [browserContext.on('pageclose')](https://playwright.dev/docs/api/class-browsercontext#browser-context-event-page-close), [browserContext.on('pageload')](https://playwright.dev/docs/api/class-browsercontext#browser-context-event-page-load). ##### Locators and Assertions - New option `description` in [page.getByRole()](https://playwright.dev/docs/api/class-page#page-get-by-role) / [locator.getByRole()](https://playwright.dev/docs/api/class-locator#locator-get-by-role) / [frame.getByRole()](https://playwright.dev/docs/api/class-frame#frame-get-by-role) / [frameLocator.getByRole()](https://playwright.dev/docs/api/class-framelocator#frame-locator-get-by-role) for matching the [accessible description](https://www.w3.org/TR/wai-aria-1.2/#dfn-accessible-description). - New option `pseudo` in [expect(locator).toHaveCSS()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-css) reads computed styles from `::before` or `::after`. - New option `style` in [locator.highlight()](https://playwright.dev/docs/api/class-locator#locator-highlight) applies extra inline CSS to the highlight overlay, plus new [page.hideHighlight()](https://playwright.dev/docs/api/class-page#page-hide-highlight) to clear all highlights. ##### Network - [webSocketRoute.protocols()](https://playwright.dev/docs/api/class-websocketroute#web-socket-route-protocols) returns the WebSocket subprotocols requested by the page. - New option `noDefaults` in [browserType.connectOverCDP()](https://playwright.dev/docs/api/class-browsertype#browser-type-connect-over-cdp) disables Playwright's default overrides on the default context (download behavior, focus emulation, media emulation), so attaching to a user's daily-driver browser doesn't disturb its state. ##### Errors and Reporting - New [webError.location()](https://playwright.dev/docs/api/class-weberror#web-error-location) mirrors [consoleMessage.location()](https://playwright.dev/docs/api/class-consolemessage#console-message-location). - [consoleMessage.location()](https://playwright.dev/docs/api/class-consolemessage#console-message-location) now exposes `line` / `column` properties (`lineNumber` / `columnNumber` are deprecated). - New [testInfoError.errorContext](https://playwright.dev/docs/api/class-testinfoerror#test-info-error-error-context) surfaces additional diagnostic context, such as the aria snapshot of the receiver at the time of an `expect(...)` matcher failure. - [reporter.onError()](https://playwright.dev/docs/api/class-reporter#reporter-on-error) now receives a `workerInfo` argument with details about the worker for fixture teardown errors. ##### Test runner - New `{testFileBaseName}` token in [testProject.snapshotPathTemplate](https://playwright.dev/docs/api/class-testproject#test-project-snapshot-path-template) — file name without extension. - Test runner now errors when a config tries to override a non-option fixture, and rejects `workers: 0` or negative values. #### 🛠️ Other improvements - HTML reporter: - `npx playwright show-report` accepts `.zip` files directly — no need to unzip first. - Steps that contain attachments inside nested children show an indicator on the parent step. - The `repeatEachIndex` is shown in the test header when non-zero. - Trace Viewer adds a pretty-print toggle for JSON / form request and response bodies in the network details panel. #### Breaking Changes ⚠️ - Removed long-deprecated APIs: - `Locator.ariaRef()` — use the standard [locator.ariaSnapshot()](https://playwright.dev/docs/api/class-locator#locator-aria-snapshot) pipeline. - `handle` option on `BrowserContext.exposeBinding` and `Page.exposeBinding`. - `logger` option on `BrowserType.connect` and `BrowserType.connectOverCDP` — use [tracing](https://playwright.dev/docs/trace-viewer) instead. - Context options `videosPath` / `videoSize` — use `recordVideo` instead. #### Browser Versions - Chromium 148.0.7778.96 - Mozilla Firefox 150.0.2 - WebKit 26.4 This version was also tested against the following stable channels: - Google Chrome 147 - Microsoft Edge 147 </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/netresearch/t3x-rte_ckeditor_image). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNTkuMiIsInVwZGF0ZWRJblZlciI6IjQzLjE4Mi4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2 parents e2ca069 + c5a4d4a commit 394582c

7 files changed

Lines changed: 45 additions & 18 deletions

File tree

.ddev/commands/host/test-e2e

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ docker run --rm \
1919
-v "$(pwd)":/app \
2020
-w /app \
2121
-e BASE_URL=https://v13.rte-ckeditor-image.ddev.site \
22-
mcr.microsoft.com/playwright:v1.57.0-noble \
22+
mcr.microsoft.com/playwright:v1.60.0-noble \
2323
/bin/bash -c "npm install && npx playwright test"
2424

2525
echo ""

Build/Scripts/runTests.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,7 @@ IMAGE_MYSQL="docker.io/mysql:${DBMS_VERSION}"
517517
IMAGE_POSTGRES="docker.io/postgres:${DBMS_VERSION}-alpine"
518518
# E2E testing images (TYPO3 Core pattern)
519519
IMAGE_APACHE="ghcr.io/typo3/core-testing-apache24:1.7"
520-
IMAGE_PLAYWRIGHT="mcr.microsoft.com/playwright:v1.59.1-noble"
520+
IMAGE_PLAYWRIGHT="mcr.microsoft.com/playwright:v1.60.0-noble"
521521

522522
# Set $1 to first mass argument, this is the optional test file or test directory to execute
523523
shift $((OPTIND - 1))

Tests/E2E/package-lock.json

Lines changed: 12 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Tests/E2E/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@
99
"report": "playwright show-report"
1010
},
1111
"devDependencies": {
12-
"@playwright/test": "1.59.1"
12+
"@playwright/test": "1.60.0"
1313
}
1414
}

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@
130130
"@ci:test:php:functional"
131131
],
132132
"ci:test:e2e": [
133-
"cd Tests/E2E && docker run --rm --network=ddev_default -v $(pwd):/app -w /app -e BASE_URL=https://v13.rte-ckeditor-image.ddev.site mcr.microsoft.com/playwright:v1.57.0-noble /bin/bash -c 'npm install && npx playwright test'"
133+
"cd Tests/E2E && docker run --rm --network=ddev_default -v $(pwd):/app -w /app -e BASE_URL=https://v13.rte-ckeditor-image.ddev.site mcr.microsoft.com/playwright:v1.60.0-noble /bin/bash -c 'npm install && npx playwright test'"
134134
],
135135
"ci:fuzz:image-parser": [
136136
".Build/bin/php-fuzzer fuzz Tests/Fuzz/ImageAttributeParserTarget.php Tests/Fuzz/corpus/image-parser --max-runs 10000"

composer.json.testing

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@
122122
"@ci:test:php:functional"
123123
],
124124
"ci:test:e2e": [
125-
"cd Tests/E2E && docker run --rm --network=ddev_default -v $(pwd):/app -w /app -e BASE_URL=https://v13.rte-ckeditor-image.ddev.site mcr.microsoft.com/playwright:v1.57.0-noble /bin/bash -c 'npm install && npx playwright test'"
125+
"cd Tests/E2E && docker run --rm --network=ddev_default -v $(pwd):/app -w /app -e BASE_URL=https://v13.rte-ckeditor-image.ddev.site mcr.microsoft.com/playwright:v1.60.0-noble /bin/bash -c 'npm install && npx playwright test'"
126126
],
127127
"ci:fuzz:image-parser": [
128128
".Build/bin/php-fuzzer fuzz Tests/Fuzz/ImageAttributeParserTarget.php Tests/Fuzz/corpus/image-parser --max-runs 10000"

renovate.json

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,32 @@
77
],
88
"automerge": true,
99
"automergeType": "pr",
10-
"platformAutomerge": true
10+
"platformAutomerge": true,
11+
"customManagers": [
12+
{
13+
"customType": "regex",
14+
"description": "Keep the hardcoded mcr.microsoft.com/playwright image tag in sync with @playwright/test",
15+
"managerFilePatterns": [
16+
"/^Build/Scripts/runTests\\.sh$/",
17+
"/^composer\\.json$/",
18+
"/^composer\\.json\\.testing$/",
19+
"/^\\.ddev/commands/host/test-e2e$/"
20+
],
21+
"matchStrings": [
22+
"mcr\\.microsoft\\.com/playwright:(?<currentValue>[^\\s\"'\\\\]+)"
23+
],
24+
"depNameTemplate": "mcr.microsoft.com/playwright",
25+
"datasourceTemplate": "docker"
26+
}
27+
],
28+
"packageRules": [
29+
{
30+
"description": "Bump the Playwright npm package and the matching Playwright Docker image together so E2E browsers stay in sync",
31+
"matchPackageNames": [
32+
"@playwright/test",
33+
"mcr.microsoft.com/playwright"
34+
],
35+
"groupName": "playwright"
36+
}
37+
]
1138
}

0 commit comments

Comments
 (0)