Commit Graph

197 Commits

Author SHA1 Message Date
Yury Semikhatsky
ebe4e41606
test: add tests for Cross-Origin-Opener-Policy navigation (#9184) 2021-09-28 09:56:07 -07:00
Yury Semikhatsky
962547e716
test: get response body for COOP responses (#9196) 2021-09-28 09:54:05 -07:00
Yury Semikhatsky
6be908d959
test: canvas updates are reflected on screenshots (#9180) 2021-09-27 13:45:03 -07:00
Max Schmitt
cd22072685
chore: enable object-curly-spacing in ESLint (#9168) 2021-09-27 18:58:08 +02:00
Dmitry Gozman
ee25fefb62
chore: remove FatalDOMError (#9119)
We can now throw stackless errors instead.
Also fixed stackless errors on Firefox.
2021-09-24 20:51:09 -07:00
Dmitry Gozman
f4aaebfba0
fix(expect): produce "waiting for selector" log, corner cases (#9140) 2021-09-24 18:55:45 -07:00
Dmitry Gozman
418ce9c17e
test: unflake a few tests (#9142) 2021-09-24 15:05:20 -07:00
Yury Semikhatsky
26bca47a47
test: add failing WebKit navigation test (#9097) 2021-09-23 08:45:40 -07:00
Dmitry Gozman
b978ce33cb
test: unflake "should fail when frame detaches" (#9095) 2021-09-22 17:09:02 -07:00
Dmitry Gozman
f0d23b5d4d
fix(css selector): absolutize relative CSS selectors (#9088)
Selectors like `> div` are replaced by `:scope > div`,
which is useful for combining them with parent selectors.
This is a part of CSS Level 4 spec.
2021-09-22 14:13:00 -07:00
Dmitry Gozman
e85a3a5a41
fix(page.content): throw a nice error when navigation intervenes (#9080) 2021-09-22 10:40:15 -07:00
Dmitry Gozman
b575c0e2e6
fix(actions): do not throw evaluate protocol errors from actions (#8997)
When using `evaluate` or `evaluateHandle` internally during actions
like `click`, we can sometimes get protocol errors if page
navigates. In this case, we throw the protocol error right away.

Instead, we can treat such a protocol error similar to "detached"
error and retry in the new execution context.
2021-09-17 22:18:00 -07:00
Yury Semikhatsky
cc15227327
fix: do not dedup header values (#8998) 2021-09-17 17:19:13 -07:00
Yury Semikhatsky
2380b07f30
feat(fetch): introduce FetchRequest.dispose, fulfill with global fetch (#8945) 2021-09-15 14:02:55 -07:00
Yury Semikhatsky
5141407c6b
fix(fetch): prefix request with underscore (#8922) 2021-09-14 12:56:09 -07:00
Joel Einbinder
afae5bef5d
feat(mouse): page.mouse.wheel (#8690) 2021-09-14 15:22:52 -04:00
Pavel Feldman
a1adc15ea3 tests: mark win32/webkit cookie multivalue test as failing 2021-09-13 20:13:25 -07:00
Pavel Feldman
64f9c3ba1d
feat(api): move fetch api into the namespace (#8871) 2021-09-13 12:43:07 -07:00
Pavel Feldman
798d0bfa9b
chore: fix headers api again (#8854) 2021-09-11 13:27:00 -07:00
Yury Semikhatsky
b6180055df
feat(fetch): make fetch api public (#8853) 2021-09-10 18:36:55 -07:00
Yury Semikhatsky
8d6bcfb66c
test: headers return only last header value for duplicates (#8851) 2021-09-10 16:37:10 -07:00
Max Schmitt
cfe7c1a7e3
fix(sizes): responseBodySize on CR & WK macOS (#8846) 2021-09-10 23:19:34 +02:00
Max Schmitt
8a3e992031
test: add test for responseBodySize with chunked requests (#8839) 2021-09-10 20:53:08 +02:00
Yury Semikhatsky
3c5d8ff18d
test: skip failing interception tests in Electron (#8836) 2021-09-10 09:33:12 -07:00
Dmitry Gozman
e85fba1c7d
fix(check): allow checking/unchecking role=radio elements (#8821)
We already do this for `role=checkbox` but not for radio.
2021-09-09 16:01:21 -07:00
Joel Einbinder
7fe30bb182
test(goto): add failing load event test for webkit (#8809) 2021-09-09 12:42:46 -07:00
Yury Semikhatsky
1ad6c8af6f
test: response finish hangs when page closes (#8816) 2021-09-09 12:27:57 -07:00
Yury Semikhatsky
5550f58284
feat(fetch): fetch with request parameter (#8793) 2021-09-08 16:31:58 -07:00
Yury Semikhatsky
b11b274b0d
feat(fetch): fulfill without passing fetch response body client<->server (#8789) 2021-09-08 14:59:12 -07:00
Pavel Feldman
5a305a9c2e
fix(recorder): move recorder scripts into the main world (#8761) 2021-09-08 14:27:05 -07:00
Max Schmitt
25b5927a4d
docs: sizes enhancements (#8771) 2021-09-08 14:09:11 +02:00
Dmitry Gozman
b30772c67e
fix(tracing): collect apiName for mouse/keyboard/touchscreen (#8755) 2021-09-07 13:48:30 -07:00
Joel Einbinder
e914f6bbc7
feat(network): remove Headers class and add headersArray method (#8749) 2021-09-07 10:27:53 -07:00
Max Schmitt
4f4bc72828
chore: add more tests for Request.sizes() (#8686) 2021-09-07 19:19:12 +02:00
github-actions[bot]
1f43df3249
feat(firefox): roll to r1291 (#8704)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-09-06 13:36:10 +02:00
Max Schmitt
e7d4d61442
feat: add forced-colors media query emulation (#6903) 2021-09-03 21:48:06 +02:00
Pavel Feldman
5ac11a7760
fix(headers): fix webkit win headers tests (#8675) 2021-09-02 22:05:22 -07:00
Pavel Feldman
0d5b41ce7b
feat(headers): add Headers.headers that would mimic the behavior of the deprecated getters (#8665) 2021-09-02 20:48:23 -07:00
Pavel Feldman
94170dacbd
chore: rename rawHeaders to allHeaders (#8659) 2021-09-02 11:46:52 -07:00
Pavel Feldman
54bda2c8dd
fix(size): fix some of the request.size() problems (#8645) 2021-09-02 10:39:57 -07:00
Pavel Feldman
42e44f888b
feat(rawheaders): introduce initial plumbing (#8638) 2021-09-01 18:28:20 -07:00
Pavel Feldman
ae3a4f5257
test: speculative fix for redirect event order (#8602) 2021-08-31 17:48:39 -07:00
github-actions[bot]
b6b9b4c170
feat(chromium): roll to r916288 (#8551)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-08-30 19:51:06 +02:00
Pavel Feldman
e47bacdecb
fix(cookies): read response headers off extra info event, if any (#8526) 2021-08-30 09:58:44 -07:00
Andrey Lushnikov
cded6bc8d9
test: unskip iframe test on firefox (#8546)
Fixes #8016
2021-08-30 02:49:25 -07:00
Pavel Feldman
e574f4b7fd
feat(api): introduce setChecked convenience method (#8525) 2021-08-29 20:00:40 -07:00
Max Schmitt
3ea2f209ea
fix(har): requestFinished/page-close race (#8518) 2021-08-28 01:09:18 +02:00
Max Schmitt
f3dde0650f
feat(network): expose bodySize, transferSize, and headerSize (#8234) 2021-08-27 22:53:57 +02:00
Andrey Lushnikov
5901cb321d
browser(firefox): fix file chooser in iframes #8510 (#8510)
References #8016
2021-08-27 09:28:24 -07:00
Pavel Feldman
4ed976f2e9
chore: remove isContextDestroyedError heuristic (#8456) 2021-08-26 18:44:49 -07:00
Max Schmitt
998f2ab959
chore: hide Route.fulfill._response from API (#8483) 2021-08-27 00:44:20 +02:00
Andrey Lushnikov
2198769f6c
fix(react-vue): support nested trees (#8467)
Turns out you can mount nested trees in both React and Vue.
This patch changes root discovery to support nested trees.

Fixes #8455
2021-08-26 03:07:33 -07:00
Pavel Feldman
95be45967a
feat(strict): list ambiguous matches when throwing strict exception (#8449) 2021-08-25 14:51:03 -07:00
Yury Semikhatsky
204b6321b4
feat(webkit): bump to 1534 (#8451) 2021-08-25 14:27:49 -07:00
Max Schmitt
6c8c18dc73 test: skip 'should work with lazy loading iframes' on Android 2021-08-25 14:27:44 +02:00
Yury Semikhatsky
a6740c852a
test: webkit linux fails to load application/octet-stream resource (#8424) 2021-08-24 17:34:29 -07:00
Max Schmitt
8e20f13079
feat(routes): add support for the times option (#8399) 2021-08-24 20:45:50 +02:00
Yury Semikhatsky
59422a00f5
feat(route): rename method, add response option (#8386) 2021-08-24 11:07:54 -07:00
Andrey Lushnikov
48e94c15c1
feat: support multiple roots in React and Vue selectors (#8313)
Fixes #8230
2021-08-20 05:05:52 -07:00
Dmitry Gozman
7818f5fa0b
test: add a tracing bot that collects a trace for most contexts (#8316) 2021-08-19 19:09:19 -07:00
Yury Semikhatsky
c00db569e3
test: skip interception test in electron (#8240) 2021-08-19 16:44:13 +02:00
Yury Semikhatsky
8cc4140933
fix: throw if intercepted response fails (#8195) 2021-08-16 16:40:47 -07:00
Yury Semikhatsky
39f663834f
test: intercepted response status line (#8189) 2021-08-13 16:28:42 -07:00
Yury Semikhatsky
4705c90682
fix(firefox): fulfill response with empty body (#8166) 2021-08-12 11:00:20 -07:00
Andrey Lushnikov
04a37aea5e
test: fix electron tests (#8169) 2021-08-12 09:38:46 -07:00
Yury Semikhatsky
59df541de5
fix: fulfill intercepted response with empty body (#8151) 2021-08-11 14:47:05 -07:00
Yury Semikhatsky
1694b3e90c
feat(firefox): response interception after redirects (#8148) 2021-08-11 12:48:30 -07:00
Yury Semikhatsky
41770bf444
feat(webkit): response interception after redirects (#8017) 2021-08-11 11:14:50 -07:00
Pavel Feldman
1d4e2fe98c
feat(nth): make nth and visible selectors public (#8142) 2021-08-11 11:06:09 -07:00
Andrey Lushnikov
4975f4179e
feat: make React and Vue selectors experimental (#8106) 2021-08-10 17:21:16 -07:00
Andrey Lushnikov
792986c92d
feat: support props matching in react and vue selectors (#8104) 2021-08-10 17:10:14 -07:00
Andrey Lushnikov
f455b6edc0
feat: introduce vue selector engine (#8070)
This patch adds support for the `vue` selector engine that allows
selecting DOM elements based on the component name.

> **NOTE**: `vue` engine supports Vue2 and Vue2.

References #7189
2021-08-09 01:34:52 -07:00
Andrey Lushnikov
f3ba2b54ff
feat: introduce react selectors (#8069)
This patch adds support for the `react` selector engine that allows
selecting DOM elements based on the component name.

> **NOTE**: in case of multi-root components (React.Fragment), `react`
engine will select all root DOM elements.

> **NOTE**: `react` engine supports react v15+.

References #7189
2021-08-07 16:51:39 -07:00
Pavel Feldman
2e63c59157
feat(trace-viewer): show remote object previews in console (#8024) 2021-08-06 11:37:36 -07:00
Max Schmitt
98f9f050a1
fix(isVisible): do not throw when element is not connected (#8012) 2021-08-05 21:10:33 +02:00
Yury Semikhatsky
7454647d8e
test: fix another EOL in expectations (#8009) 2021-08-05 08:59:48 -07:00
Yury Semikhatsky
28fb3c776a
feat: response interception after redirects in chromium (#7910) 2021-08-05 08:49:02 -07:00
Max Schmitt
611a8556c8 test: fix flaky locator-convenience test 2021-08-05 11:56:34 +02:00
Max Schmitt
3e491114f2
test: fix some failing locators tests (#7989) 2021-08-04 23:36:27 +02:00
Yury Semikhatsky
8a7cfc08a6
test: use os-speific EOL sequence in test expectaions (#7988) 2021-08-04 20:54:52 +02:00
Max Schmitt
b88199d93e
test: fix locator-misc-1 tests on Android (#7985) 2021-08-04 20:11:17 +02:00
Yury Semikhatsky
c08117d384
test: fulfilled intercepted response body (#7975) 2021-08-03 15:29:51 -07:00
Max Schmitt
2236d74f3f
chore: locator code style nits (#7972) 2021-08-03 13:32:39 -07:00
Joel Einbinder
4fabe5e6e4
feat(drag): sourcePosition and targetPosition (#7803) 2021-08-03 13:12:34 -04:00
Fabian Mendez
731f9453c5
feat(inputValue): implement inputValue for select elements (#7951) 2021-08-03 08:22:40 -07:00
Pavel Feldman
2c095294c5
feat(locators): introduce allTextContents, allInnerTexts (#7920) 2021-07-29 14:09:35 -07:00
Yury Semikhatsky
722f0606c4
feat(firefox): response interception (#7510) 2021-07-29 10:12:47 -07:00
Pavel Feldman
3187ffdebf
feat(expect): add more matchers (#7891) 2021-07-28 15:44:44 -07:00
Pavel Feldman
b8dc0b9156
feat(expect): implement toMatchText (#7871) 2021-07-27 20:26:12 -07:00
Pavel Feldman
cc43f9339f
feat(locators): implement last,nth (#7870) 2021-07-27 15:58:18 -07:00
Pavel Feldman
b9aad5eb86
chore: move locators to strict selectors (#7866) 2021-07-27 15:27:36 -07:00
Pavel Feldman
982f61d575
chore: BFS nodes, simplify querying (#7861) 2021-07-27 12:53:12 -07:00
Pavel Feldman
0a6ae11da1
feat(strict): introduce strict mode (#7851) 2021-07-26 22:00:23 -07:00
Pavel Feldman
827fb80465
feat(locator): implement element locators (#7808) 2021-07-22 21:37:20 -07:00
Joel Einbinder
56ada374df
feat(dragAndDrop): page.dragAndDrop (#6910) 2021-07-19 12:42:55 -05:00
Joel Einbinder
2f07846c9a
fix(webkit): proper value for event.buttons (#7680) 2021-07-16 13:06:00 -05:00
Max Schmitt
cf0fb33540
fix: add log entry if selector resolves to multiple elements on click (#7623) 2021-07-15 22:06:08 +02:00
Joel Einbinder
5389d507e7
test(webkit): disbale page-click-scroll test for WPE (#7627) 2021-07-14 20:52:04 -07:00
Max Schmitt
767e22c6b2
fix(network): process last inserted routes first in request interception (#7585) 2021-07-13 20:22:01 +02:00
Yury Semikhatsky
ee0b16b087
test: MouseEvent.buttons for mouse move events (failing) (#7577) 2021-07-13 09:47:44 -07:00