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