949 Commits

Author SHA1 Message Date
Dmitry Gozman
080e372a4f
feat(inspector): use chrome/msedge when chromium is not available (#9269)
Drive-by: language-specific error message.
2021-10-01 17:06:00 -07:00
Yury Semikhatsky
1b4adfb916
fix(webkit): deduce response mime type from content-type (#9264) 2021-10-01 13:04:03 -07:00
Yury Semikhatsky
235eaca34a
fix(fetch): use data, form and multipart for different post data (#9248) 2021-10-01 12:11:33 -07:00
Dmitry Gozman
f3648a66a3
chore: split ContextRecorder from inspector (#9250) 2021-10-01 12:07:35 -07:00
Sidharth Vinod
3296c21a80
feat(cli): Support trace file URLs (#9030) 2021-10-01 07:08:41 -07:00
github-actions[bot]
131e26c65e
feat(chromium): roll to r926934 (#9259)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-10-01 15:57:19 +02:00
Yury Semikhatsky
4e372dccb5
feat(fetch): import/export storageState (#9244) 2021-09-30 14:14:29 -07:00
Max Schmitt
a1d0878fa1
fix: allow binary response interception (#9236) 2021-09-30 23:12:33 +02:00
Yury Semikhatsky
2d428c8a4e
feat(fetch): store cookies between requests (#9221) 2021-09-29 17:15:32 -07:00
Dmitry Gozman
5633520f45
fix(selenium connect): register in gracefullyCloseAll for driver cleanup (#9218)
Otherwise, killing the driver does not cleanup sessions in the grid.
2021-09-29 14:54:24 -07:00
Pavel Feldman
f78302e8dd
fix(toBeHidden): return true to missing elements (#9205) 2021-09-28 17:11:04 -07:00
Yury Semikhatsky
b93718daea
feat(fetch): support ignoreHTTPSErrors option (#9206) 2021-09-28 15:33:36 -07:00
Pavel Feldman
2b055b3092
feat(api): introduce locator.waitFor (#9200) 2021-09-28 13:57:11 -07:00
Yury Semikhatsky
64657c3b65
feat(fetch): send Playwright as default user-agent for global fetch (#9195) 2021-09-28 13:01:35 -07:00
Dmitry Gozman
8dc8777ab4
feat(expect): toContainText(array) (#9160)
This matches when each expected item from the array
is matched to one of the resolved elements, in order.
Note this performs both "sub-array" and "substring" matching.

Drive-by: documentation fixes.
Drive-by: added "selector resolved to 3 elements" log line
when expecting arrays.
2021-09-27 11:14:35 -07:00
Max Schmitt
cd22072685
chore: enable object-curly-spacing in ESLint (#9168) 2021-09-27 18:58:08 +02:00
github-actions[bot]
03376ed44b
feat(chromium): roll to r925110 (#9175)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-27 18:26:09 +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
Pavel Feldman
db6c55af51
chore: add a test for the log scale polling (#9136) 2021-09-24 12:54:33 -07:00
Pavel Feldman
1db41c330a
chore: migrate remaining expect to protocol (#9121) 2021-09-24 11:06:30 -07:00
Max Schmitt
4eede61f79
feat(chromium): roll to 924544 (#9131) 2021-09-24 18:13:12 +02:00
Pavel Feldman
0908dc98c8
chore: migrate expect(locator).toMatchText to protocol (#9117) 2021-09-23 16:46:46 -07:00
Joel Einbinder
219d00d17b
chore(typescript): bump typescript to v4.4.3 (#9087) 2021-09-23 11:55:44 -04:00
Pavel Feldman
e03db79682
fix(firefox): use global eval in injected script (#9101) 2021-09-22 21:49:14 -07:00
Dmitry Gozman
2afe76d86d
feat(launch): connect to process.env.SELENIUM_REMOTE_URL instead of local launch (#9056) 2021-09-22 21:13:32 -07:00
Pavel Feldman
de4aa50d55
chore: simplify dom tasks (#9089) 2021-09-22 17:17:49 -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
Yury Semikhatsky
79eb7744bc
feat(fetch): support options in playwright._newRequest (#9061) 2021-09-22 12:44:22 -07:00
Dmitry Gozman
e85a3a5a41
fix(page.content): throw a nice error when navigation intervenes (#9080) 2021-09-22 10:40:15 -07:00
Max Schmitt
449a593050
fix(fetch): be compatible with a 0 timeout (#9071) 2021-09-22 10:30:56 -07:00
Max Schmitt
d354d14fb9
chore: move Frame.waitForTimeout to the server side (#9053) 2021-09-21 22:06:14 +02:00
github-actions[bot]
e5b8c02c93
feat(chromium): roll to r922811 (#9024)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-20 15:32:32 +02:00
github-actions[bot]
d61148c39a
feat(webkit): roll to r1548 (#8996)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-18 07:50:42 +02: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
Pavel Feldman
63ff405e6e
fix(inspector): stop on all snapshottable actions (#8990) 2021-09-17 15:24:15 -07:00
Yury Semikhatsky
e359e95fcc
chore(fetch): fix typo (#8991) 2021-09-17 12:43:00 -07:00
Yury Semikhatsky
43a690c204
feat(fetch): set content-length header if post data is present (#8979) 2021-09-17 09:00:18 -07:00
github-actions[bot]
8dd0387641
feat(chromium): roll to r922354 (#8987)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-17 16:14:41 +02:00
Yury Semikhatsky
806a71a4f0
feat(fetch): support form data and json encodings (#8975) 2021-09-16 17:48:43 -07:00
Joel Einbinder
eafba43e15
fix(snapshot): render adoptedStyleSheets used in more than one node (#8886)
.
2021-09-16 09:37:38 -04:00
Yury Semikhatsky
2380b07f30
feat(fetch): introduce FetchRequest.dispose, fulfill with global fetch (#8945) 2021-09-15 14:02:55 -07:00
Dmitry Gozman
2ec82b9a5c
fix(oopifs): ignore events from stale frames (#8926)
This is a speculative fix for the following scenario:
- Main frame A creates a child frame B.
- B navigates cross-origin and forces an oopif.
- Target.attachedToTarget for B arrives.
- B loads and creates execution contexts.
- Process with A creates an execution context in the
  (still local) frame B (e.g. with document.write?)
- Process with A sends executionContextCreated and
  overwrites the execution context that came from B.
- Process with A finally sends frameDetached for B,
  and we ignore it since we already have the B target.
This sequence results in a stale execution context
from process A that is actually not present in B.

Overall, events coming from process A for the frame
that has already moved to an oopif B should be ignored.
Seems totally safe! This is also pure specultation
from analyzing protocol logs, no easy repro found.
2021-09-15 10:26:02 -07:00
Joel Einbinder
04fa5e6b2d
chore: remove unused .idea folder (#8844) 2021-09-15 11:42:31 -04:00
github-actions[bot]
b69818d9f4
feat(webkit): roll to r1542 (#8791)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-15 09:51:32 +02:00
Yury Semikhatsky
c58f34fb2e
feat(fetch): introduce global fetch request (#8927) 2021-09-14 18:31:35 -07:00
Joel Einbinder
afae5bef5d
feat(mouse): page.mouse.wheel (#8690) 2021-09-14 15:22:52 -04:00
Will 保哥
db1c8b2693
fix(codegen): NUnit's Equal API should be Assert.AreEqual (#8859) 2021-09-13 21:19:21 -07:00
Yury Semikhatsky
1b66581e34
fix(fetch): do clear responses when context closes (#8902) 2021-09-13 21:15:23 -07:00
Pavel Feldman
478a7bcc90
fix(recorder): check that glass pane is in the current document (#8891) 2021-09-13 16:17:34 -07:00