Commit Graph

1096 Commits

Author SHA1 Message Date
Yury Semikhatsky
879ce66f5e
test(webkit): unskip one more navigation test (#534) 2020-01-17 17:12:43 -08:00
Yury Semikhatsky
f76db837c9 fix(webkit): make interception work with cross-process navigation (#529) 2020-01-17 16:48:50 -08:00
Yury Semikhatsky
44cbe00643
test(webkit): unskip passing test (#530) 2020-01-17 16:17:51 -08:00
Dmitry Gozman
82057ac610 test: make api coverage checker work (#517) 2020-01-16 17:46:50 -08:00
Dmitry Gozman
057e466a65 fix(api): remove network events for data: urls (#512) 2020-01-16 16:58:02 -08:00
Dmitry Gozman
447d76d6cd
fix(firefox): assorted fixes to evaluation and remote objects (#511) 2020-01-16 15:24:37 -08:00
Dmitry Gozman
21510a5b06
feat(firefox): support isolated worlds (#507) 2020-01-16 12:57:28 -08:00
Joel Einbinder
a92bec13cb test: disable flaky redirect loop test (#496) 2020-01-15 22:05:27 -08:00
Pavel Feldman
a71f31d07e
fix(wkwin): misc test fixes (#502) 2020-01-15 17:53:03 -08:00
Pavel Feldman
6f92d19cdd
test: rebaseline with win32 in mind (#499) 2020-01-15 13:40:44 -08:00
Joel Einbinder
aaa1c9203e
feat(firefox&webkit): support root in accessibility.snapshot (#495)
This adds support for `root` in accessibility.snapshot
firefox role names are now normalized to aria roles where they match
webkit roledescriptions are less noisey on mac
webkit mac/linux results are further defined
interestingOnly tests are replaced by one that doesn't rely on undefined behavior
the main accessibility test was split up a bit for more refined testing.
2020-01-14 16:54:50 -08:00
Joel Einbinder
29c3a7f021 test: add a failing test for Page.waitForLoadState (#488) 2020-01-14 13:54:48 -08:00
Yury Semikhatsky
5fa39dde3f
fix(webkit): use cross-process loader ids (#486) 2020-01-14 11:46:08 -08:00
Dmitry Gozman
5b1aef4c20 api: remove BrowserFetcher from api, update docs (#487) 2020-01-14 10:07:26 -08:00
Yury Semikhatsky
ff904d3a61
Revert "fix(webkit): use cross-process loader ids (#484)" (#485)
This reverts commit d341b43023.
2020-01-14 09:49:49 -08:00
Yury Semikhatsky
d341b43023
fix(webkit): use cross-process loader ids (#484) 2020-01-14 09:48:36 -08:00
Dmitry Gozman
74b208cae5 feat(selectors): text=foo selector engine (#475) 2020-01-13 17:39:43 -08:00
Dmitry Gozman
b388722777
chore: update top-level api (#479)
```
require('playwright').chromium.launch(...)
window.playwrightweb.chromium.connect(...)
```
2020-01-13 17:36:46 -08:00
Joel Einbinder
0ea6e19b09
fix(test): failing ci tests (#478)
disables some failing Firefox tests
Moves newContext error checking before the context is created, to not create zombie contexts
sets CI timeout to 30 seconds
waits for `exit` instead of `close` for processes
2020-01-13 17:16:05 -08:00
Dmitry Gozman
929b7d979b
test(selectors): should auto-detect css selector with attributes (#477) 2020-01-13 17:13:36 -08:00
Dmitry Gozman
8b09358a56
fix(screenshot): element screenshot should not throw when viewport is null (#472) 2020-01-13 16:29:08 -08:00
Dmitry Gozman
a88d30140c fix(geolocation): improve geolocation validation (#471) 2020-01-13 15:39:13 -08:00
Dmitry Gozman
88a11a3fbd fix(getProperties): return empty map for non-objects (#470) 2020-01-13 15:36:22 -08:00
Andrey Lushnikov
98bf9ac1d5
fix(testrunner): return correct exit code (#474) 2020-01-13 15:30:16 -08:00
Dmitry Gozman
a1d1f26fb7 chore: more strict type checking (#466) 2020-01-13 13:33:25 -08:00
Pavel Feldman
d19f10ef42
fix(geolocation): use values from context options (#463) 2020-01-13 13:32:44 -08:00
Yury Semikhatsky
778ab3deff chore: replace CHROME with CHROMIUM (#465) 2020-01-13 10:13:28 -08:00
Pavel Feldman
00057df92b test: uncomment more webkit tests (#461) 2020-01-11 08:37:51 -08:00
Pavel Feldman
16cedfe9da
test: rebaseline mobile viewport screenshot (#462) 2020-01-10 22:34:17 -08:00
Pavel Feldman
69fe6ece43 test: mark web sdk tests as non-core 2020-01-10 21:54:42 -08:00
Dmitry Gozman
67e4214146 feat(navigation): early return when navigation was canceled by another one (#459)
Also added related interception tests.
2020-01-10 17:33:07 -08:00
Andrey Lushnikov
7a7ff9e994 Revert "Revert "feat(firefox): roll Firefox to r1011 (#452)""
This reverts commit a738af4603.
2020-01-11 02:32:28 +01:00
Dmitry Gozman
63f16a9ef8
fix(screenshot): provide nice error message during navigation (#456) 2020-01-10 17:25:28 -08:00
Dmitry Gozman
c77fd5e6cb
feat(pw-web): generate playwright/web.js which can be used in the browser (#455) 2020-01-10 16:03:10 -08:00
Dmitry Gozman
15b05e43bc test(emulation): should update settings during navigation (#457) 2020-01-10 15:53:48 -08:00
Pavel Feldman
a738af4603 Revert "feat(firefox): roll Firefox to r1011 (#452)"
This reverts commit c1f75f7833.
2020-01-10 12:17:34 -08:00
Andrey Lushnikov
c1f75f7833 feat(firefox): roll Firefox to r1011 (#452) 2020-01-10 10:54:24 -08:00
Pavel
4bdbe81856 chore: shuffle screenshot tests 2020-01-09 17:45:30 -08:00
Pavel
896701b3e3 test: uncomment geolocation tests on WK 2020-01-09 17:40:50 -08:00
Pavel Feldman
4d2a503c44
feat(webkit): rebaseline Joel's pass all viewport tests PR (#440) 2020-01-09 17:06:06 -08:00
Pavel Feldman
63f208bafb test(screenshots): add a bunch of screenshot tests (#448) 2020-01-09 16:43:11 -08:00
Dmitry Gozman
987863cfb8
chore(webkit): remove WKPageProxySession, separate connection from browser session (#447) 2020-01-09 15:14:35 -08:00
Joel Einbinder
d83d3c3851
feat(webkit): basic isMobile viewport support (#348) 2020-01-08 20:15:30 -08:00
Joel Einbinder
f161a36a16 feat(webkit): roll webkit to 1076 (#431) 2020-01-08 15:34:35 -08:00
Yury Semikhatsky
b6f1b17906
fix(webkit): do not fire FrameNavigated when receive resource tree (#432) 2020-01-08 15:32:13 -08:00
Dmitry Gozman
28bad69093
fix(server): tidy up BrowserServer.close methods (#426) 2020-01-08 13:55:38 -08:00
Yury Semikhatsky
b654fd614d
test(webkit): enable Keyboard should work after a cross origin navigation (#428) 2020-01-08 12:28:00 -08:00
Yury Semikhatsky
86fc2699aa
test(webkit): enable click test that was fixed by moving input agent (#424) 2020-01-08 10:49:14 -08:00
Dmitry Gozman
8697929e39
chore: move webkit server code to src/server (#415) 2020-01-07 16:15:07 -08:00
Dmitry Gozman
f15abadc9e chore: refactor CRBrowserServer (#408) 2020-01-07 14:13:55 -08:00
Pavel Feldman
f75ac45c42
feat(workers): support workers in webkit (#400) 2020-01-07 12:59:01 -08:00
Dmitry Gozman
9c966c8b19
feat(pw-web): introduce platform.ts to absract between node and browser platforms (#392) 2020-01-07 11:55:24 -08:00
Arjun Attam
562e6f5fe1 chore(license): use Apache 2.0 (#389) 2020-01-06 18:22:35 -08:00
Pavel Feldman
e826a4d3f4
fix: await the popup nav to make the test pass (#391) 2020-01-06 16:34:04 -08:00
Pavel Feldman
15ee47c7b2 feat(auth): roll webkit to 1063, make auth work for headful (#387) 2020-01-06 16:31:38 -08:00
Pavel Feldman
a3e3ff73bd
test: fix the popup test on WebKit / GTK (#384) 2020-01-06 13:31:37 -08:00
Dmitry Gozman
491eeeef7e feat(scrollIntoView): expose scrollIntoViewIfNeeded in api (#382)
This also replaces isIntersectingViewport with visibleRatio for more flexibility.
2020-01-06 13:16:56 -08:00
Pavel Feldman
58b8e66df8
tests: make WebKit / GTK run all tests again (#383) 2020-01-06 11:48:11 -08:00
Pavel Feldman
38e79f12ec feat(media): remove media emulation from browser context options (#377) 2020-01-05 14:39:16 -08:00
Pavel Feldman
2f3593bd9a
test: uncomment / fix webkit tests that time out (#379) 2020-01-04 22:27:09 -08:00
Joel Einbinder
9fb6a68b25 fix(webkit): use protocol to serialize values instead of JSON (#373) 2020-01-03 15:39:01 -08:00
Dmitry Gozman
04bf728364 test: make network cache test pass on all browsers (#374) 2020-01-03 15:34:51 -08:00
Dmitry Gozman
cf6f04893c
fix(browserContext): make a copy of passed options object (#370) 2020-01-03 14:42:18 -08:00
Pavel Feldman
62888d8543
revert(json): revert WK null-json mode, joel has a better fix (#372) 2020-01-03 14:06:55 -08:00
Dmitry Gozman
32edca7395 fix(networkidle): ignore favicons and keep track of requests (#368)
This counters Firefox not cancelling existing requests on navigation.
2020-01-03 12:59:27 -08:00
Dmitry Gozman
310d4b193b test: check that we inherit options from BrowserContext to the Page (#367) 2020-01-03 11:17:14 -08:00
Joel Einbinder
790e38a678 feat(webkit): accessibility (#350)
* move accessibility out of features

* feat(webkit): accessibility
2020-01-03 11:15:43 -08:00
Pavel Feldman
fcd62b9611 feat(webkit): roll webkit to r1060, support target crash (#364) 2020-01-03 11:10:10 -08:00
Dmitry Gozman
6c1289626b
test: add a test for orientationchange event (#366) 2020-01-03 11:01:13 -08:00
Pavel Feldman
2d14d1ec1f feat(geo): enable geolocation overrides on WK (#361) 2020-01-03 10:14:50 -08:00
Pavel Feldman
0d9638fe20 feat(webkit): support pageerror event (#362) 2020-01-03 10:07:49 -08:00
Joel Einbinder
26538d6aec test: add mobile screenshot test, failing on webkit and firefox (#354) 2020-01-02 15:28:14 -08:00
Pavel Feldman
0fab90be79
feat(evaluate): survive null JSON in WK and FF (#352) 2020-01-02 15:06:28 -08:00
Arjun Attam
682e2be15f fix: allow email type in input for fill action (#353) 2020-01-02 14:10:01 -08:00
Pavel Feldman
b64bd35c23
feat(evaluate): survive null JSON (#351) 2020-01-02 12:13:18 -08:00
Pavel Feldman
6a04e1f026 feat(offline+auth): enable those in webkit, make them a part of the core API (#346) 2019-12-30 23:09:54 +01:00
Pavel Feldman
654fa22cc7 feat(webkit): enable request interception (#343) 2019-12-30 23:05:28 +01:00
Yury Semikhatsky
c540561503
test(wk): unskip passing test (#339) 2019-12-26 15:27:52 -08:00
Yury Semikhatsky
f56ff07f19
fix(wk): support ElementHandle.ownerFrame (#338) 2019-12-26 14:05:46 -08:00
Yury Semikhatsky
3f0eaa2350
test(wk): unskip test that failed because bootstrap scripts did not survive PSON (#331) 2019-12-23 10:40:15 -08:00
Pavel Feldman
4638019902
feat(api): use good old inheritance instead of feature detection (#329) 2019-12-21 09:03:52 -08:00
Pavel Feldman
8f480a3987 docs: more docs update (#327) 2019-12-20 16:57:21 -08:00
Yury Semikhatsky
701b5db452 fix(wk): make evaluateOnNewDocument work with PSON (#326) 2019-12-20 16:16:32 -08:00
Dmitry Gozman
735d3eeed7
feat(navigation): introduce waitForNavigationIfNeeded (#310)
This one waits for current navigation to finish, matching by url if asked.
If there is no current navigation or current navigation/url does not match,
it waits for the next matching one.
2019-12-20 15:32:30 -08:00
Dmitry Gozman
56a48559c2
fix(setContent): call window.stop() before setting new content (#323)
This ensures that previous loading activity is suppressed and all network requests are canceled.
2019-12-20 15:30:12 -08:00
Pavel Feldman
9cfa404c87
feat: trim down url matching (#322) 2019-12-20 14:38:54 -08:00
Yury Semikhatsky
6b60b510b3 test: make fixture tests pass in all browsers (#321) 2019-12-20 14:10:13 -08:00
Pavel Feldman
ad22a46fde
feat: move permissions back into the context (#320) 2019-12-20 13:07:14 -08:00
Joel Einbinder
ce74a659e1 test: failing test for setting JSON equal to null (#314) 2019-12-19 17:25:09 -07:00
Andrey Lushnikov
a7f3490e48 feat(testrunner): implement "dit" command (#312) 2019-12-19 16:47:35 -07:00
Dmitry Gozman
12ac458614 fix(elementhandle): contentFrame and ownerFrame work in various scenarios (#311)
Drive-by: use evaluateInUtility for various utility evals.
2019-12-19 15:19:22 -08:00
Dmitry Gozman
7e90292834 fix(networkidle): make it (almost) work with setContent (#307) 2019-12-19 15:07:57 -08:00
Pavel Feldman
331f0e603a feat: introduce BrowserServer (#308) 2019-12-19 14:51:49 -08:00
Dmitry Gozman
b378bc7f6c
feature(evaluate): support cross-context element handles (#295) 2019-12-19 11:44:07 -08:00
Dmitry Gozman
c172a7e7e0 feature: $wait similar to waitForFunction, but taking a selector (#303) 2019-12-18 18:11:02 -08:00
Pavel Feldman
d570fc7809
feat: further strip the browser api (#304) 2019-12-18 18:07:11 -08:00
Dmitry Gozman
3669dad243 feat(urlmatch): support url matching in waitForNavigation (#300) 2019-12-18 18:03:02 -08:00
Joel Einbinder
1c2b6444e9 test(webkit): add tests for after cross origin navigations (#298) 2019-12-18 17:42:16 -08:00
Andrey Lushnikov
8cc682c7b8 feat(testrunner): allow focusing all tests in a file
With this change, exporting a "fdescribe" function from a file
will focus all tests inside the file.
2019-12-18 17:13:39 -08:00
Pavel Feldman
0e3328218d feat(context): remove the notion of incognito context (#299) 2019-12-18 16:44:02 -08:00
Yury Semikhatsky
da051a72a8 fix: strip off hash from request urls (#297) 2019-12-18 16:27:20 -08:00
Pavel Feldman
b5e9086576 chore: remove browser from the api (#296) 2019-12-18 16:23:05 -08:00
Yury Semikhatsky
1d4ebd37b1
tests(webkit): mark Page.navigate to invalid URL test as passing (#293) 2019-12-18 16:49:43 -07:00
Yury Semikhatsky
ac2ea265fe
test(wk): unskip passing navigation test (#294) 2019-12-18 16:01:08 -07:00
Andrey Lushnikov
44b39bad33 fix(testrunner): show maximum 10 skipped tests in test report
This is to save some terminal screen real estate.

Drive-by: remove async test suites from test runner.
2019-12-18 14:33:46 -08:00
Dmitry Gozman
9afd35d3a1
feature(waitfor): waitFor visible or any by default (#284) 2019-12-18 14:28:16 -08:00
Dmitry Gozman
7750db97fe
api: remove ExecutionContext from api (#290)
In the current state, it is superseeded by Frame and JSHandle.
2019-12-18 13:51:45 -08:00
Yury Semikhatsky
58cd8210b0 test: disable new referrer test on FF 2019-12-18 13:36:35 -08:00
Yury Semikhatsky
adf54ee6b3
tests: move ws-specific browser tests to corrsponding browser suites (#289) 2019-12-18 13:28:23 -07:00
Pavel Feldman
6d0dfd0abf
feat(context): start moving overrides to the context level 2019-12-18 12:23:33 -08:00
Andrey Lushnikov
f56726759b
test: normalize browser executable path variables (#287) 2019-12-17 18:07:01 -08:00
Dmitry Gozman
0f8333ba89
feature(filechooser): move waitForFileChooser to common waitForEvent (#281) 2019-12-17 17:34:32 -08:00
Andrey Lushnikov
533d058ea6
fix(firefox): support late attachment and skip a few failing tests (#283) 2019-12-17 17:33:06 -08:00
Yury Semikhatsky
83833f61c1
feat(webkit): support referrer parameter in Page.navigate (#286)
* add test for reference-policy: no-referrer
2019-12-17 18:19:35 -07:00
Dmitry Gozman
fd927000ea feature: update api around selectors (#280)
- Selector is again a string.
- Most methods taking selector also accept waitFor option.
- Available waitFor options are: 'visible', 'hidden', 'any' === true, false === undefined.
- waitForXPath is removed.
- waitForSelector is replaced by $(selector, { waitFor: true }).
2019-12-17 14:30:02 -08:00
Dmitry Gozman
75ae9bfeee
feature(waitFor): use URLMatch to match request/response, waitForEvent for generic (#278) 2019-12-17 14:00:39 -08:00
Andrey Lushnikov
0dafabb05e test: fix a few tests on firefox (#279) 2019-12-17 13:33:05 -07:00
Dmitry Gozman
24eb6d8671
chore: simplify extra http headers handling across browsers (#274) 2019-12-17 11:31:52 -08:00
Yury Semikhatsky
e851a27350
feat(webkit): implement ElementHandle.contentFrame (#276) 2019-12-17 12:21:53 -07:00
Yury Semikhatsky
629c56b0ab test: make async stacks pass on WebKit (#277) 2019-12-17 11:04:04 -08:00
Dmitry Gozman
5a60a96410 chore: reuse navigation methods between browsers (#271) 2019-12-16 22:02:33 -08:00
Dmitry Gozman
48be99a56e feat(selectors): add id selectors (#270) 2019-12-16 20:49:18 -08:00
Yury Semikhatsky
8828228702 tests(webkit): unskip test that depends on frameStoppedLoading (#269) 2019-12-16 20:19:41 -08:00
Yury Semikhatsky
4a5929da55
fix(webkit): mark mixed content test as passing (#260)
* roll WebKit to 1042
2019-12-16 18:47:38 -07:00
Yury Semikhatsky
974f82073f feat(webkit): allow to run beforeunload when closing page (#264) 2019-12-16 17:33:36 -08:00
Yury Semikhatsky
bfb8df29bb
feat(webkit): reload page after updating user agent (#268) 2019-12-16 18:29:40 -07:00
Dmitry Gozman
f9f7d5c55a feature(navigation): implement networkilde0 and networkidle2 (#263) 2019-12-16 16:32:04 -08:00
Yury Semikhatsky
a8f9c627f1 chore(tests): move ignoreHTTPSErrors interception test to featutes folder (#252) 2019-12-16 09:17:14 -08:00
Pavel Feldman
df95b9ddb4 feat(waitFor): allow actions to wait for selector; make visible requirement default (#254) 2019-12-14 20:13:22 -07:00
Pavel Feldman
a9568af21d
feat: create FF default profile prefs dynamically (#250) 2019-12-14 11:55:21 -08:00
Yury Semikhatsky
394c74fa5f chore(tests): move setCacheEnabled interception test to features (#253) 2019-12-14 11:54:52 -08:00
Dmitry Gozman
09bf6b1906 fix(navigation): expect navigation on navigation request (#248) 2019-12-14 08:20:51 -08:00
Yury Semikhatsky
f539afa2a7
feat(webkit): support ignoreHTTPSErrors launcher option (#243)
Also roll webkit to 1036
2019-12-13 22:46:27 -07:00
Pavel Feldman
0b5c0a76ab feat(webkit): support emulating color scheme (#247) 2019-12-13 17:34:02 -08:00
Pavel
c6afe0f155 test: enable Page.emulateMedia tests on WK 2019-12-13 16:37:49 -08:00
Dmitry Gozman
dd2ce94de9
fix(navigation): waitForNavigation to pick up aborted navigation (#244) 2019-12-13 16:35:10 -08:00
Pavel
cde81aaf5a fix: account for linux treatment of canceled requests 2019-12-13 14:06:00 -08:00
Dmitry Gozman
39fb556f27 fix(webkit): detect expected/aborted navigations based on network requests (#238) 2019-12-13 13:03:52 -08:00
Pavel Feldman
bae8cd3fae
chrome: co-locate transport types (#236) 2019-12-12 21:30:49 -08:00
Pavel Feldman
5822de844a chore: rename common files to start with lower case 2019-12-12 20:55:29 -08:00
Pavel Feldman
c7cf4886ea api: s/createIncognitoBrowserContext/newContext/ 2019-12-12 20:14:50 -08:00
Dmitry Gozman
90f0b8c2b0
fix(firefox): setContent to properly listen for lifecycle events (#219) 2019-12-12 20:11:33 -08:00
Andrey Lushnikov
ee1f4784c6
feat(firefox): implement browser.firefox.wsEndpoint() (#233)
This lets us pass the fixtures test for browser shutdown.
2019-12-12 18:40:48 -08:00
Pavel
0675d8ec9a test: happy webkit test patch 2019-12-12 18:27:07 -08:00
Dmitry Gozman
d378a8d3fc chore: reuse processLauncher between browsers (#231)
Drive-by: improve test runner to always exit and kill browsers
2019-12-12 17:52:13 -08:00
Dmitry Gozman
3b202fb4b8 fix(webkit): handle frameAttached event (#227) 2019-12-12 17:50:37 -08:00
Pavel Feldman
738502b0f0
fix(resize): wait for the ack when resizing gtk (#230) 2019-12-12 17:49:48 -08:00
Pavel Feldman
ad067261fc test: removed accidental fit 2019-12-12 11:26:17 -08:00
Pavel Feldman
043e2f7513 test: uncomment utility world test 2019-12-12 10:36:11 -08:00
Pavel Feldman
58fd7c5c45 test: remove BigInt tests, no one uses BigInt yet (#224) 2019-12-12 10:38:34 -07:00
Dmitry Gozman
59b0900321
feat(selectors): introduce zs selector engine (#214) 2019-12-12 09:02:37 -08:00
Pavel Feldman
856787a8e6 feat(webkit): roll to 1029 (#222) 2019-12-12 08:59:33 -08:00
Dmitry Gozman
3c7181a545 fix(webkit): fix ordering of provisional messages relative to the rest (#225) 2019-12-12 09:59:08 -07:00
Pavel Feldman
cca2659578 test: update console tests (#223) 2019-12-12 08:58:37 -08:00
Pavel Feldman
66e93ce2c0 test: rearrange / uncomment more tests 2019-12-11 22:52:14 -08:00
Pavel Feldman
995300b778 test: rearrange / uncomment some tests 2019-12-11 22:43:06 -08:00
Pavel Feldman
19cac9a0c1 test: rebaseline wk/mac network tests 2019-12-11 19:32:07 -08:00
Pavel Feldman
7c7c13e89d fix(webkit): fix a couple of navigation tests (#217) 2019-12-11 17:46:26 -08:00
Pavel Feldman
6440323003 fix(webkit): wait for main response on subresource-free goto (#216) 2019-12-11 16:19:37 -08:00
Joel Einbinder
78847c2f52 test(webkit): add failing test for navigating after disabling javascript (#215) 2019-12-11 16:04:02 -07:00
Pavel Feldman
4824a25cc6
fix(csp): fix some of the csp tests (#211) 2019-12-11 13:51:03 -08:00
Pavel Feldman
357e175964 fix(webkit): fullPage screenshot w/o viewport (#210) 2019-12-11 11:26:34 -08:00
Pavel Feldman
26e96bf591 test: follow up with chromiunm test fixes 2019-12-11 07:38:20 -08:00
Dmitry Gozman
57acdfd860 chore: reuse LifecycleWatcher between browsers (#208) 2019-12-11 07:17:32 -08:00
Pavel Feldman
e42e361d20
feat(webkit): use new bypass csp method (#207) 2019-12-10 19:26:13 -08:00
Pavel Feldman
0353dbb3be test: rearrange remaining launcher tests 2019-12-10 19:23:21 -08:00
Joel Einbinder
02f2209b13 test(firefox): enable some tests that already firefox passes (#204) 2019-12-10 17:09:06 -08:00
Pavel Feldman
8c548ed9e9
feat(webkit): implement page.exposeFunction (#195) 2019-12-10 15:17:42 -08:00
Dmitry Gozman
5ffb710d7d
chore: reuse BrowserContext across browsers (#201) 2019-12-10 15:13:56 -08:00
Joel Einbinder
0af3b9dfc8 feat(webkit): page.on('popup') (#202) 2019-12-10 15:07:00 -08:00
Joel Einbinder
c8067dbcde fix(test): Disable spellcheck in our textarea tests (#203) 2019-12-10 14:53:26 -08:00
Pavel Feldman
fe6addc71a test: rearrange launcher tests more 2019-12-10 14:02:48 -08:00
Pavel Feldman
f37d9bfe95 test: extract chromium-specific connect tests 2019-12-10 13:28:50 -08:00
Andrey Lushnikov
329b34e894
feat: implement mac keyboard (#197)
This list contains all of the default keyboard shortcuts for macos, and the Objective-C selector that they trigger on the [NSStandardKeyBindingResponding](https://developer.apple.com/documentation/appkit/nsstandardkeybindingresponding/3005237-moveleft?language=objc). We need these for basic keyboard functionality like ArrowUp and ArrowDown to work on WebKit for mac. For other browsers on mac, the same list can be used to enable better mac keyboard emulation.

The list was made by constructing NSEvents on a mac and seeing what selectors they triggered on an NSTextView. The conversion from NSEvents to DOM codes was done partially by hand as the code that does this conversion lives across many files in WebKit. There may be some errors or missing commands, but in general this should be a more faithful mac keyboard emulation than what we do in Chromium currently.

Notably absent from the list are Cut, Copy, Paste, Paste Special, Undo, and Redo. They are handled in a slightly different way.
2019-12-10 13:22:01 -08:00
Pavel Feldman
c61c5b056f test: group interception tests in interception.spec 2019-12-10 13:11:20 -08:00
Pavel Feldman
44d6f608ef feat(webkit): use webkit worlds (#194) 2019-12-09 23:24:12 -08:00
Dmitry Gozman
b4c89ca0f9
chore: unify frame lifecycle events between browsers (#172) 2019-12-09 16:34:42 -08:00
Dmitry Gozman
e5a85e4e67
chore(webkit): migrate to common Page (#189) 2019-12-09 15:45:32 -08:00
Dmitry Gozman
640646b794
chore(firefox): migrate to common Page (#188) 2019-12-09 14:53:17 -08:00
Joel Einbinder
e3f34bd69a
fix(fill): throw when the element isn't fillable (#160)
An element is fillable if its:
- In dom
- Not display:none or visibility:hidden
- textarea or input or contenteditable

if textarea or input it must also be
- not readOnly
- not disabled

#133
2019-12-09 14:51:19 -08:00
Pavel Feldman
f5cd742b79
test: rebaseline some click tests (#179) 2019-12-08 17:17:49 -08:00
Pavel Feldman
51c975b098 chore: group more feature test files 2019-12-08 09:04:07 -08:00
Pavel
5274f2bd3c chore: only test request interception for Chrome & FF 2019-12-06 17:37:45 -08:00
Yury Semikhatsky
02e29219fd fix(webkit): make go back/forard return null on error (#171) 2019-12-06 16:38:23 -08:00
Pavel
0884e29695 chore: rearrange test spec files 2019-12-06 16:15:47 -08:00
Pavel
b45ea22660 test: fix element.handle nested frames 2019-12-06 15:11:14 -08:00
Pavel
bcb62de4b2 fix(test): make click tests pass everywhere 2019-12-06 14:48:41 -08:00
Pavel
349ce22565 lint: follow up with lints 2019-12-06 12:04:11 -08:00
Pavel Feldman
bb1888c86e feat(screenshots): make them work everywhere (#164) 2019-12-06 11:33:24 -08:00
Joel Einbinder
1c9103e642 test(chrome): failing test for clicking when scroll-behavior is smooth (#136) 2019-12-05 17:58:19 -08:00
Andrey Lushnikov
929a5944bd test: fix chromium tests (#155)
3 chromium tests were failing on Linux.
2019-12-05 15:12:22 -07:00
Pavel Feldman
2d77760f01
chore: move tests around after targets extraction (#153) 2019-12-05 13:15:17 -08:00
Dmitry Gozman
d4f0084f67
chore: move element coordinates handling to common (#139)
Browser now implement boundingBox(), contentQuads() and layoutViewport().
2019-12-05 09:54:50 -08:00
Yury Semikhatsky
25af050bd4 feat(webkit): add page back/forward commands (#144) 2019-12-05 08:32:52 -08:00
Pavel Feldman
e1c4eaae28
chore: make targets chromium feature (#137) 2019-12-04 16:12:43 -08:00
Dmitry Gozman
fc5898892b
feat(selectors): support optional "visible" property in all selectors (#129) 2019-12-04 13:11:10 -08:00
Joel Einbinder
492f539310
chore(firefox): lint against the juggler protocol (#94) 2019-12-04 10:33:29 -08:00
Yury Semikhatsky
ba54ad46b3 feat(page): add Page.setJavaScriptEnabled for WebKit (#125) 2019-12-03 10:47:02 -08:00
Dmitry Gozman
6b3c2632e7
feat(selectors): support various selectors in waitFor methods (#122) 2019-12-03 10:43:13 -08:00
Dmitry Gozman
bb1433a143
feat(selectors): support various kinds of selectors (#118)
This adds support for generic "engine=body [>> engine=body]*" selector syntax
and auto-detects simple css or xpath.
2019-12-02 17:33:44 -08:00
Pavel Feldman
505c9e3660 test: uncomment more cookies tests 2019-12-02 17:02:33 -08:00
Pavel Feldman
040f93faa2 feat(cookies): implement cookies across the board (#121) 2019-12-02 16:36:46 -08:00
Yury Semikhatsky
2ca2a4cb18 feat(launcher): throw on browser launch failure, default args (#119) 2019-12-02 16:17:53 -08:00
Dmitry Gozman
b6c892842b
feat(screenshot): multiple element screenshots are now taken sequentially (#114)
This makes multiple element screenshots to not fight for the page viewport
by putting viewport manipulation under screenshot task queue.

Drive-by: encapsulated all screenshot logic in Screenshotter.
2019-12-02 10:53:58 -08:00
Pavel Feldman
f28b31672e
test: fix file chooser tests (#110) 2019-11-27 16:18:04 -08:00
Pavel Feldman
cf9c4d153a feat(webkit): implement file chooser interception (frontend) (#98) 2019-11-27 13:50:24 -08:00
Joel Einbinder
49f8963bf1
feat(webkit): dialogs (#75) 2019-11-27 12:24:52 -08:00
Pavel Feldman
72b1bb783b
feat(chromium): roll chromium to r719491, lint, test (#99) 2019-11-26 22:53:34 -08:00
Pavel Feldman
cc41377fe2 chore: move emulateTimeZone and setGeolocation to Overrides (#92) 2019-11-26 15:13:49 -08:00
Pavel Feldman
c7a07ea2a8 chore: move more unsupported apis to interception (#91) 2019-11-26 15:01:27 -08:00
Pavel Feldman
64d3e83ddf
chrome(filechooser): align file chooser implementations (#88) 2019-11-26 14:29:21 -08:00
Pavel Feldman
a4e24c718b
feat(cookies): move cookie management to BrowserContext (#82) 2019-11-26 11:23:13 -08:00
Pavel Feldman
2eb653740a feat(headful): remove bringToFront (#84) 2019-11-26 11:00:54 -08:00
Pavel Feldman
991f4a9072
docs: fix the docs validator (#86) 2019-11-26 08:52:47 -08:00
Andrey Lushnikov
d4d0654666
feat(firefox): roll Firefox to r1003 (#78) 2019-11-25 16:49:15 -08:00
Pavel Feldman
2e581f1625 feat(emulate): implement emulateMedia color scheme in FF (#71) 2019-11-25 15:00:04 -08:00
Pavel Feldman
eaa5e93b8b feat(filechooser): supported file chooser in FF (#70) 2019-11-25 13:56:39 -08:00
Dmitry Gozman
d5ad3960c3 chore: move Keyboard to common, with RawKeyboardImpl per vendor (#69) 2019-11-25 11:19:20 -08:00
Pavel Feldman
3190044c00 feat(firefox): implemented *.fill (#63) 2019-11-22 16:55:35 -08:00
Yury Semikhatsky
ef847b1941 fix(page): support multiple bootstrap scripts (#59) 2019-11-22 16:25:36 -08:00
Pavel Feldman
ef464e447f
feat(input): dblclick/trippleclick feature parity (#60) 2019-11-22 14:46:34 -08:00
Yury Semikhatsky
37a9c17d3e fix (#58) 2019-11-22 14:04:04 -08:00
Yury Semikhatsky
ac01262c88
feat(page): support Page.evaluateOnNewDocument for WebKit (#55) 2019-11-22 13:14:07 -08:00
Dmitry Gozman
e04910501b
feat(select): use ElementHandle instead of 'id=foo' when choosing options (#54) 2019-11-22 11:54:49 -08:00
Pavel Feldman
508c1960dd
chore: unify emulateMedia APIs (#53) 2019-11-22 11:24:56 -08:00
Dmitry Gozman
7783400156 feat(select): allow to select options by value/label/id/index (#46) 2019-11-21 21:19:21 -08:00
Pavel Feldman
1e91257d6e chore: group chromium-specific features (#45) 2019-11-21 16:54:10 -08:00
Pavel Feldman
e3dcac1d46
chore: move interception API into features/ (#43) 2019-11-21 14:41:38 -08:00
Andrey Lushnikov
43836c9178 Revert "docs: show browser test stats in the readme (#24)"
This reverts test stats from the README.md
The stats now leave in a designated status page.
2019-11-21 13:00:48 -08:00
Joel Einbinder
92a6500b23 feat(webkit): page.fill and friends (#40) 2019-11-20 16:57:37 -08:00
Pavel Feldman
e869b12f46 chore: remove touchscreen API (#41) 2019-11-20 16:55:02 -08:00
Joel Einbinder
206cf7b83f feat(webkit): pass all keyboard tests (#39)
Add `keyboard.sendCharacter` and fixes up all of the keyboard tests.

Drive-by to actually allow selectively installing browsers.
2019-11-20 16:39:12 -08:00
Pavel Feldman
f9a89eb313 chore: split vendor APIs (#38) 2019-11-20 15:16:57 -08:00
Pavel Feldman
1fe1e150f3 chore: move geolocation into features/ (#37) 2019-11-20 14:18:05 -08:00
Pavel Feldman
cf97e2c140 chore: remove handle.boxModel API (#36) 2019-11-20 14:15:19 -08:00
Pavel Feldman
653b4b9df3 chore: remove SecurityDetails API (#35) 2019-11-20 13:53:27 -08:00
Pavel Feldman
a216063829 chore: remove Request.fromCache/ServiceWorker APIs (#34) 2019-11-20 11:57:21 -08:00
Pavel Feldman
76eb289f54
chore: move permissions API into features/ (#33)
- drive-by accessibility spec moved to a shared folder
2019-11-20 09:40:26 -08:00
Pavel Feldman
48a78b2c8a
chore: remove page.queryObjects API (#31) 2019-11-20 09:28:40 -08:00
Pavel Feldman
35e6d10517
chore: remove page.metrics API (#30) 2019-11-20 09:28:22 -08:00
Pavel Feldman
83ed65dce8 chore: move workers into features/ (#29) 2019-11-19 17:32:43 -08:00
Joel Einbinder
0a8d55d954 docs: show browser test stats in the readme (#24) 2019-11-19 16:30:24 -08:00
Pavel Feldman
85035fedea chore: move pdf, tracing, coverage, a11y into featuress/ (#28) 2019-11-19 16:29:28 -08:00
Pavel Feldman
6b5ab68e70 test: fix failing chromium tests (#26) 2019-11-19 13:51:09 -08:00
Pavel Feldman
4b13b5e3c6 chore: remove page.pdf API (#25) 2019-11-19 13:50:23 -08:00
Pavel Feldman
9ba375c063 Initial commit 2019-11-19 10:58:15 -08:00