Commit graph

6530 commits

Author SHA1 Message Date
Andrey Lushnikov 5c9ebfaa79
chore(ci): bump checkout action to v2 (#1263)
This should fix the checkout problems we're facing.
Related discussion: https://github.com/actions/checkout/issues/23
2020-03-06 09:40:54 -08:00
Pavel Feldman 49c1161e00
api(press): bump .press to the page/frame level (#1262) 2020-03-06 09:38:08 -08:00
Pavel Feldman 2724157c22
feat(waitUntil): allow waiting for navigation from clicks, etc (#1255) 2020-03-06 08:24:32 -08:00
Joel Einbinder 9c80c9efa0
browser(webkit): don't leak pages on window.open (#1261) 2020-03-06 08:21:14 -08:00
Dmitry Gozman 1d770af804
api: waitForElement accepts waitFor: attached|detached|visible|hidden (#1244)
This includes rename waitForSelector -> waitForElement and removes $wait.
2020-03-05 17:45:41 -08:00
Yury Semikhatsky 9bc6dcea1d
feat(api): introduce BrowserContext.waitForEvent (#1252) 2020-03-05 17:22:57 -08:00
Andrey Lushnikov 8c9933e0f5
browser(firefox): move Juggler to top-level (#1254)
Review URL: 5ba06e6d7a

Drive-by: fix re-baseline over r1036
2020-03-05 17:20:07 -08:00
Dmitry Gozman 9d3bff1cf9
browser(firefox): implement Browser.setHTTPCredentials (#1251) 2020-03-05 16:37:44 -08:00
Dmitry Gozman e5f82af47c
api(popups): emit PageEvent immediately, and resolve page() once initialized (#1229)
This way we do not miss any popups, even immediately closed ones.
2020-03-05 15:18:27 -08:00
Pavel Feldman c734b4b715
feat(click): start wire auto-waiting click in firefox (#1233) 2020-03-05 14:47:04 -08:00
Yury Semikhatsky e770d706a1
fix(chromium): do not create default page and context in headless (#1247) 2020-03-05 14:46:12 -08:00
Andrey Lushnikov b0d037ecfe
browser(firefox): fix flaky permissions in Firefox (#1249)
Review URL: 9bd6e72005

Wait for permissions to propagate to all context pages.

References #720
2020-03-05 14:31:57 -08:00
Dmitry Gozman cd8714d573
tests: skip failing waitForNavigation test in Chromium (#1248) 2020-03-05 13:28:45 -08:00
Andrey Lushnikov 20c326378c
browser(firefox): follow-up with SimpleChannel unification (#1246)
Review URL: 141f30f450

Address all comments in 1bf5b61cbb
2020-03-05 13:16:43 -08:00
Pavel Feldman 2cd727f675
browser(firefox): signal link click (#1236) 2020-03-05 11:59:29 -08:00
Yury Semikhatsky 665888d579
feat(popups): auto-attach to all pages in Chromium (#1226) 2020-03-05 10:45:32 -08:00
Yury Semikhatsky aabdac8380
api: remove Page.setCacheEnabled (#1231) 2020-03-05 10:09:04 -08:00
Andrey Lushnikov 1bf5b61cbb
browser(firefox): move workers to use SimpleChannel (#1232)
Review URL: 4753d0121f

This patch:
- Moves Workers to FrameTree
- Introduces WorkerData in PageAgent that proxies runtime agent
  in worker to browser process
- Introduces WorkerHandler in PageHandler that handles communicates
  with runtime agent in worker and handles Juggler protocol

As part of this patch, SimpleChannel no longer manages lifetime of
any of its handlers.
2020-03-04 21:18:56 -08:00
Pavel Feldman 4fd23124bb
chore: introduce webkit cheatsheet 2020-03-04 20:14:05 -08:00
Pavel Feldman a69c85f5f8
chore: added ff cheat sheet 2020-03-04 20:09:05 -08:00
Pavel Feldman 11f68bac54
feat(cr, wk): make clicks, input and evaluate await scheduled navigations (#1200) 2020-03-04 19:15:01 -08:00
Dmitry Gozman 7f9df9488e
api(popups): move Page.setOfflineMode -> BrowserContext.setOffline (#1223) 2020-03-04 17:58:12 -08:00
Dmitry Gozman 3bedc60b2b
fix(dispose): do not await inner handle dispose (#1230) 2020-03-04 17:57:35 -08:00
Dmitry Gozman 5ee744cd26
api(page.frame): allow looking up frames by name (#1228) 2020-03-04 17:53:39 -08:00
Dmitry Gozman 6fb5168fb2
feat(chromium): roll Chromium to v747023 (#1227) 2020-03-04 17:39:29 -08:00
Pavel Feldman 5ff660de15
feat(navigation): waitForNavigation/goto should not wait until response finished (#1225) 2020-03-04 15:59:26 -08:00
Andrey Lushnikov 31278408db
browser(firefox): introduce SimpleChannel (#1209)
Review URL: 6364381adc

Refactor inter-process communication inside Firefox. The goal is
to have a single abstraction that works nicely for all our cross-process
communication needs (browser <-> content, content <-> workers, content
<-> file:// process, e.t.c.)

This is step 1 that eliminates content sessions everywhere.
Step 2 will move workers onto `SimpleChannel` as well.

This is a pre-requisite for #720: with a single `browser <-> content`
communication channel it will be easier to await permission change in tabs.

References #720
2020-03-04 14:33:49 -08:00
Andrey Lushnikov 82baf61b19
feat(webkit): roll webKit to r1168 (#1224)
Hopefully this will fix our CI crashes!
2020-03-04 14:15:34 -08:00
Arjun Attam 56e25c214c
docs: create development dir for non-user related docs (#1217) 2020-03-04 13:05:12 -08:00
Dmitry Gozman dbfeda28a0
feat(webkit): roll to 1167 (#1221) 2020-03-04 12:11:43 -08:00
Yury Semikhatsky 2d4317dc9a
docs: fix browser.contexts() description (#1220) 2020-03-04 12:05:18 -08:00
Andrey Lushnikov f5a530e17f
docs(showcase): Add headlesstesting.com (#1218)
Add showcase entry for HeadlessTesting.com - run Playwright tests on browsers in the cloud
2020-03-04 11:54:45 -08:00
Andrey Lushnikov 262ee7c425
browser(webkit): fix the pool leaks on mac (#1219) 2020-03-04 11:51:39 -08:00
Andrey Lushnikov d6e265f443
docs(readme): add network interception example (#1216) 2020-03-04 11:03:49 -08:00
Andrey Lushnikov 14a7d1c656
chore: bump proxy-from-env dependency (#1210)
Fixes #1184
2020-03-04 11:02:50 -08:00
Pavel Feldman 778762455a
browser(webkit): fix delete context stall, emit schedule load (#1211) 2020-03-03 23:06:59 -08:00
Yury Semikhatsky 771793f418
test(context): test that context.close() works for empty context (#1205) 2020-03-03 23:04:08 -08:00
Joel Einbinder 8aa88d5021
fix(doc): check and update optional types in the api (#1206)
This adds a new check to doclint for whether a member is correctly marked as optional. 
part of #6
2020-03-03 17:29:12 -08:00
Dmitry Gozman f4e9b5079d
api: declare not supporting isMobile on Firefox (#1207) 2020-03-03 17:28:31 -08:00
Dmitry Gozman 33f3e5724b
test: skip flaky 'Page.goto extraHttpHeaders should be pushed to provisional page' (#1203) 2020-03-03 17:26:58 -08:00
Dmitry Gozman 1c4619e5e0
fix(chromium/webkit): fix a race between Page.enable and Page.getResourceTree (#1201) 2020-03-03 17:15:43 -08:00
Dmitry Gozman 15c70c9d61
fix(click): timing out in page while waiting for interactable should have proper error (#1199)
This fixes flaky 'Page.click should timeout waiting for visible' test.
2020-03-03 17:14:00 -08:00
Yury Semikhatsky 23790f749d
browser(webkit): send reply to deleteContext even if there are no pages in it (#1204) 2020-03-03 17:10:29 -08:00
Joel Einbinder fcfe887c57
feat(select): don't accept undefined as a value (#1202)
`page.select` accepting an `undefined` value is a legacy of when `page.select` took `...values`. This matches the way the method is documented in the API.
2020-03-03 16:59:41 -08:00
Yury Semikhatsky 4556513c2a
chore(test): test cleanup (#1198) 2020-03-03 16:58:37 -08:00
Dmitry Gozman 6c6cdc033b
api(popup): introduce BrowserContext.exposeFunction (#1176) 2020-03-03 16:46:06 -08:00
Dmitry Gozman 1b863c2300
fix(screenshots): simplify implementation, allow fullPage + clip, add tests (#1194) 2020-03-03 16:09:32 -08:00
Dmitry Gozman 2ec9e6daa2
test: cleanup some test files (#1195) 2020-03-03 15:02:06 -08:00
Yury Semikhatsky 9f3ccb4b35
browser(webkit): wait for all pages to close in deleteContext (#1197) 2020-03-03 14:44:32 -08:00
Yury Semikhatsky 4a9a155838
test: enable page opener test on WebKit (#1193) 2020-03-03 14:11:17 -08:00