Pavel Feldman
74e5e5560f
chore: update missing snapshots by default ( #33311 )
2024-10-25 16:13:38 -07:00
Pavel Feldman
ff5f1628dc
chore: allow aria snapshot rebaselines ( #33256 )
2024-10-24 16:49:10 -07:00
Pavel Feldman
9a0a6cec10
chore: remove the leaf node notion ( #33249 )
2024-10-23 17:34:21 -07:00
Dmitry Gozman
993a6b2a2a
fix(recorder): do not leak when instantiated in snapshots ( #33240 )
2024-10-23 10:24:53 -07:00
Pavel Feldman
6bfdad068c
chore: introduce accessibility tab in recorder ( #33235 )
2024-10-22 16:36:03 -07:00
Rui Figueira
b194d6a1e9
fix(recorder): fix recorder injected icons ( #33198 )
2024-10-22 12:44:18 +02:00
Pavel Feldman
2a3d67195d
chore: use aria snapshots in some ui mode tests ( #33212 )
2024-10-21 21:54:06 -07:00
Pavel Feldman
97d26e8166
chore: add aria attribute tests ( #33184 )
2024-10-19 14:23:08 -07:00
Pavel Feldman
64bf1bc107
chore: support basic aria attributes ( #33182 )
2024-10-18 20:18:18 -07:00
Pavel Feldman
29c84a33c3
chore: compute aria text consistently with the role accumulated text ( #33157 )
2024-10-17 17:06:18 -07:00
Pavel Feldman
94321fef1c
chore: implement locator.ariaSnapshot ( #33125 )
2024-10-15 18:47:26 -07:00
Pavel Feldman
b421bd8b0d
chore: add a basic snapshot generator test ( #33123 )
2024-10-15 15:21:45 -07:00
Pavel Feldman
4b1fbde2ad
chore: generate match snapshot ( #33105 )
2024-10-15 13:38:55 -07:00
Dmitry Gozman
17837e564d
fix(routeWebSocket): make sure ws url without trailing slash is supported ( #33095 )
2024-10-15 02:08:27 -07:00
Pavel Feldman
2c05d294a8
chore: fix webkit visibility check in aria matcher ( #33102 )
2024-10-14 15:55:21 -07:00
Pavel Feldman
a38ff6e0d8
chore: experimental toMatchAriaSnapshot ( #33014 )
2024-10-14 14:07:19 -07:00
Dmitry Gozman
3c5967d4f5
fix(trace viewer): clear old highlighted elements upon change ( #32917 )
...
When the list of highlighted elements changes over time, we should
update the elements marked as `__playwright_target__` in the snapshot.
A good example is an `expect(locator).toHaveText([...])` where the list
of elements changes from 4 items to 3 after clicking a "Delete" button.
2024-10-02 23:48:26 -07:00
Dmitry Gozman
a395fb22c4
feat(routeWebSocket): address api review feedback ( #32850 )
2024-09-27 04:01:31 -07:00
Pavel Feldman
c105de4436
chore: move actions types to recorder ( #32839 )
2024-09-26 14:50:09 -07:00
Pavel Feldman
61801aa1ee
chore: more codegen fixes ( #32816 )
2024-09-25 18:18:36 -07:00
Pavel Feldman
35158feec0
chore: fix codegen flakiness ( #32799 )
2024-09-24 19:56:31 -07:00
Pavel Feldman
0cdc7ee1a3
chore: extract polling recorder ( #32749 )
...
We are reusing recorder in a snapshot tab, no need for the polling
harness to be there.
2024-09-23 08:42:18 -07:00
Dmitry Gozman
cdcaa7fab6
feat: routeWebSocket ( #32675 )
...
This introduces `WebSocketRoute` class and
`page/context.routeWebSocket()` methods.
2024-09-20 03:20:06 -07:00
Max Schmitt
ec3db20743
test: fix toolbar hydration test under frozen suite ( #32684 )
2024-09-18 15:35:33 +02:00
Simon Knott
b0f15b320f
fix(recorder): reattach toolbar if it was unmounted by framework hydration ( #32637 )
...
Closes https://github.com/microsoft/playwright/issues/32632 . A side
effect of Remix's hydration implementation is that it throws away the
entire DOM. This is broadly discussed in
https://github.com/remix-run/remix/issues/4822 - there might be a fix in
coming React versions, but who knows.
Besides breaking browser extensions, this also deletes our toolbar!
This PR fixes it by periodically checking in on `x-pw-glass`, and
remounting it if it was unmounted. Hacky but effective!
2024-09-17 08:37:49 +02:00
Pavel Feldman
47713e8a66
chore: make recorder tests pass in frozen mode ( #32645 )
2024-09-16 22:47:54 -07:00
Pavel Feldman
d051495c7a
chore: perform double click while recording ( #32576 )
2024-09-12 11:40:44 -07:00
Pavel Feldman
74a8e59096
chore: allow recorder rewrite annotations ( #32381 )
2024-08-29 14:16:01 -07:00
Pavel Feldman
bc87467b25
chore: generate simple dom descriptions in codegen ( #32333 )
2024-08-27 11:52:14 -07:00
Pavel Feldman
177576a51b
chore: add simple dom util ( #32332 )
2024-08-26 16:28:40 -07:00
Max Schmitt
67d3d5f203
fix(clock): don't throw for |null| or |undefined| callbacks ( #32309 )
...
Fixes https://github.com/microsoft/playwright/issues/32293
This aligns it how Chromium and other browsers are doing it.
2024-08-26 09:26:38 -07:00
Pavel Feldman
37eb66df10
chore: extract performAction in recorder ( #32279 )
2024-08-23 10:19:44 -07:00
Dmitry Gozman
571f25a7d3
fix(role): hidden pseudos should not contribute to accessible name ( #32251 )
2024-08-21 11:14:41 -07:00
Pavel Feldman
109cab66f1
chore: extract recorder dialog into a class ( #32233 )
2024-08-20 10:56:55 -07:00
Dmitry Gozman
b4a9b247b4
fix(role): make sure to ignore style/script/noscript/template ( #32231 )
...
Even when these are a part of a hidden `aria-labelledby` traversal, all
browsers ignore them anyway.
2024-08-20 09:02:23 -07:00
Max Schmitt
d0c840f639
fix(clock): mock time in Event.prototype.timeStamp ( #31986 )
...
Ideally we generate the timestamp when the Event gets created. This
patch adds a best-effort logic, since we can't override the constructor
of natively created events, e.g. `MouseEvent`.
Fixes https://github.com/microsoft/playwright/issues/31924
2024-08-02 15:27:54 +02:00
Max Schmitt
6988194c97
test: unflake contextmenu recorder test ( #31749 )
2024-07-26 12:43:05 +02:00
Matt Kleinsmith
e06481a332
fix(recorder): address custom context menus ( #31634 )
2024-07-17 11:45:48 -07:00
Pavel Feldman
297143885a
fix(clock): ensure Date.now() is an integer ( #31648 )
...
Fixes https://github.com/microsoft/playwright/issues/31644
2024-07-12 11:44:25 -07:00
Pavel Feldman
77e50635ee
chore: fix build warnings ( #31616 )
2024-07-11 14:12:59 +02:00
Dmitry Gozman
21c4531618
fix(selector generator): do not reparent to invisible ancestor ( #31590 )
...
Fixes #31335 .
2024-07-08 09:07:25 -07:00
4ydx
4089f4593b
fix(codgen): assertValue works with disabled select ( #31315 )
2024-06-28 13:04:59 -07:00
Dmitry Gozman
ac90a47b73
fix(click): do not retarget <a> to the parent <label> ( #31368 )
...
Fixes #31359 .
2024-06-18 12:12:19 -07:00
Yury Semikhatsky
9e6772818e
chore: cache normalized whitespaces in recorder ( #31349 )
...
Reference: https://github.com/microsoft/playwright/issues/31254
On the web page from the bug it reduces time to compute selectors by 8x:
**Before:**
<img width="549" alt="before"
src="https://github.com/microsoft/playwright/assets/9798949/f4482860-29d5-4643-92ab-b360a702f232 ">
**After:**
<img width="580" alt="after"
src="https://github.com/microsoft/playwright/assets/9798949/b6aca6a1-9306-4041-9042-d504dce1c33a ">
2024-06-17 18:20:15 -07:00
Yury Semikhatsky
5443b66636
fix(codegen): trim alt selectors to 80 chars ( #31346 )
...
Fixes https://github.com/microsoft/playwright/issues/31254
2024-06-17 16:32:22 -07:00
Pavel Feldman
2a7f17d820
chore: fix simulated clock bots ( #31301 )
2024-06-17 09:17:38 -07:00
Fumiaki MATSUSHIMA
838c572209
fix: select issue in Windows with Edge ( #31270 )
2024-06-17 10:28:07 +02:00
Pavel Feldman
897f7449ef
fix(clock): fix pauseAt to arrive at wall time ( #31297 )
2024-06-13 10:21:00 -07:00
Pavel Feldman
2b257ea963
chore(clock): introduce pauseAt ( #31255 )
2024-06-11 12:51:00 -07:00
Pavel Feldman
6399e8de4e
chore: clock api review ( #31237 )
2024-06-11 09:42:15 -07:00