Граф коммитов

510 Коммитов

Автор SHA1 Сообщение Дата
Andreas Tolfsen 4a2fe54072 Bug 1420431 - Return no such element error when on no active element. r=maja_zf
document.activeElement will return null if there is no document
element.  This may happen if, for example, in an HTML document the
<body> element is removed.

The WPT test test_sucess_without_body in get_active_element.py
is wrong.  It expects Get Active Element to return null if there
is no document element, but following a recent specification change
we want it to return a no such element error.

Specification change: https://github.com/w3c/webdriver/pull/1157

MozReview-Commit-ID: LQJ3slV9aty

--HG--
extra : rebase_source : cc349bb642f57bb2203d126ecd86d8d988d90301
2017-11-24 16:23:02 +00:00
Andreas Tolfsen 4ee38f4584 Bug 1420431 - Allow WebElement to be returned from GeckoDriver. r=maja_zf
Instead of having to assign resp.body.value explicitly when dealing
with WebElements, this makes it possible to return WebElement
references directly from GeckoDriver command handlers.  This was
not possible in the past because web element representations were
just plain object literals.

MozReview-Commit-ID: EPqXJ2gpNen

--HG--
extra : rebase_source : 334a5f4f597259c28b3c00c93f3ad24912d5dd87
2017-11-24 16:20:21 +00:00
Nathaniel Nebel 103901d7dc Bug 1381459 - Allow closing of browserless tabs. r=whimboo
Closing a tab should always be allowed, even if the current content browser doesn't exist.
This can be the case when a tab gets moved to a different process.

MozReview-Commit-ID: LaU9MgEyCOx

--HG--
extra : rebase_source : 4b49693e0c9acdfc2407bd2f9a41fd501dad8d63
2017-11-24 03:11:18 -08:00
David Burns 08fa1187af Bug 1416284: Dismiss alerts when we hit an UnexpectedAlertOpen error. r=ato
The Browser Testing and Tools group agreed that the webdriver endpoint, when
asserting for a modal, that it clears the modal on the screen and raises an
an Unexpected Alert Open error.

See https://github.com/w3c/webdriver/pull/1145

MozReview-Commit-ID: 1OnT1AMM0tY

--HG--
extra : rebase_source : c8d75074273071fe4d701e69f6044d1ff94eb2f0
2017-11-10 17:25:50 +00:00
Gijs Kruitbosch 469382710e Bug 1408044 - stop using about.dtd as an example in firefox-ui/puppeteer/marionette docs/tests, r=whimboo
MozReview-Commit-ID: 4zog9pSgCs9

--HG--
extra : rebase_source : 978a490b010179ded8b7ab3bdddf659fb0a331af
2017-11-14 23:37:04 +00:00
Noemi Erli 548d6fb5ab Backed out 2 changesets (bug 1416284) for Wd Linux debug failures e.g. in get_window_rect.py r=backout on a CLOSED TREE
Backed out changeset 8fc12fbc1422 (bug 1416284)
Backed out changeset ff138177269b (bug 1416284)
2017-11-18 02:43:31 +02:00
David Burns 6016775811 Bug 1416284: Dismiss alerts when we hit an UnexpectedAlertOpen error. r=ato
The Browser Testing and Tools group agreed that the webdriver endpoint, when
asserting for a modal, that it clears the modal on the screen and raises an
an Unexpected Alert Open error.

See https://github.com/w3c/webdriver/pull/1145

MozReview-Commit-ID: 1OnT1AMM0tY

--HG--
extra : rebase_source : d403cdd98d6ceaf2fc101e9371e4092ceb7558de
2017-11-10 17:25:50 +00:00
Ciure Andrei a8907fc95a Backed out 5 changesets (bug 1408044) for failing Android test: TestAboutPagesPreparer.java:24: cannot find symbol. r=backout on a CLOSED TREE
Backed out changeset 5c5152ad910d (bug 1408044)
Backed out changeset c9a062838c12 (bug 1408044)
Backed out changeset 9ceaa645f2a9 (bug 1408044)
Backed out changeset 10fc0a581606 (bug 1408044)
Backed out changeset 513140019014 (bug 1408044)
2017-11-17 12:19:30 +02:00
Gijs Kruitbosch c1e68c5edc Bug 1408044 - stop using about.dtd as an example in firefox-ui/puppeteer/marionette docs/tests, r=whimboo
MozReview-Commit-ID: 4zog9pSgCs9

--HG--
extra : rebase_source : 546415e95c83591d2077a9d6995e69d091a64f73
2017-11-14 23:37:04 +00:00
btara dc38bb2f52 Backed out 2 changesets (bug 1416284) for failing e.g. /webdriver/tests/minimize_window.py r=backout
on a CLOSED TREE
Backed out changeset dff6393650df (bug 1416284)
Backed out changeset b1474e3a2e94 (bug 1416284)

--HG--
extra : rebase_source : 0877a744252fdb0aeb022fc99fd8b117bdd2b628
2017-11-15 01:14:08 +02:00
David Burns 45d2ccaa1d Bug 1416284: Dismiss alerts when we hit an UnexpectedAlertOpen error. r=ato
The Browser Testing and Tools group agreed that the webdriver endpoint, when
asserting for a modal, that it clears the modal on the screen and raises an
an Unexpected Alert Open error.

See https://github.com/w3c/webdriver/pull/1145

MozReview-Commit-ID: 1OnT1AMM0tY

--HG--
extra : rebase_source : dab2d8b96f3dc1dddb7b22127faf30e9e744b0bc
2017-11-10 17:25:50 +00:00
Csoregi Natalia 8eea4c5d3b Backed out 2 changesets (bug 1416284) for unexpectedly passing WDSpec tests /webdriver/tests/set_window_rect.py r=backout
Backed out changeset b1a9e1788e2e (bug 1416284)
Backed out changeset 1902e83f331d (bug 1416284)
2017-11-14 02:44:31 +02:00
David Burns b695a4f813 Bug 1416284: Dismiss alerts when we hit an UnexpectedAlertOpen error. r=ato
The Browser Testing and Tools group agreed that the webdriver endpoint, when
asserting for a modal, that it clears the modal on the screen and raises an
an Unexpected Alert Open error.

See https://github.com/w3c/webdriver/pull/1145

MozReview-Commit-ID: 1OnT1AMM0tY

--HG--
extra : rebase_source : a990f0fa5643dc7e844e79b9f344126a49e79665
2017-11-10 17:25:50 +00:00
Andreas Tolfsen 0d995bbca5 Bug 1384956 - Get log level from main process when script is reloaded. r=whimboo
This is a workaround for https://bugzil.la/1411513 about Log.jsm
not being compatible with E10s.  It queries the log level via
synchronous IPC message to the main process.

MozReview-Commit-ID: 5RZluH8Rv9o

--HG--
extra : rebase_source : 7ccf803ec7041a2d910f5697f63ee8f1a978d79f
2017-11-11 17:43:24 -08:00
Andreas Tolfsen 707c28df99 Bug 1410652 - Let WebDriver:SwitchToFrame take a web element. r=whimboo
The "element" field on the WebDriver:SwitchToFrame command request's
body takes a string web element reference UUID as input.  This patch
changes it so that it can also take a web element JSON Object.

The old behaviour can be removed with Firefox 60.

MozReview-Commit-ID: JcTD3MRxjOe

--HG--
extra : rebase_source : f313349121787e8f68137132cac49aecebee5ba1
2017-10-21 19:30:27 +01:00
Sebastian Hengst 7eb270c395 Backed out 4 changesets (bug 1410652) for eslint failure at testing/marionette/element.js: Line 1456 exceeds the maximum line length of 78. r=backout
Backed out changeset 97031d4ea2bd (bug 1410652)
Backed out changeset 66754caa4c52 (bug 1410652)
Backed out changeset 48048929bb17 (bug 1410652)
Backed out changeset 265a168b4e37 (bug 1410652)
2017-10-30 19:32:43 +01:00
Andreas Tolfsen 8c8b85caa1 Bug 1410652 - Let WebDriver:SwitchToFrame take a web element. r=whimboo
The "element" field on the WebDriver:SwitchToFrame command request's
body takes a string web element reference UUID as input.  This patch
changes it so that it can also take a web element JSON Object.

The old behaviour can be removed with Firefox 60.

MozReview-Commit-ID: JcTD3MRxjOe

--HG--
extra : rebase_source : 3da4b30d2689b6416d89bee838df73af40db2686
2017-10-21 19:30:27 +01:00
Mark Banner 4de6bf22b1 Bug 1411368 - Automatically fix no-multi-spaces issues raised when using ESLint 4. r=mossop
MozReview-Commit-ID: H5YVp3rnzGo

--HG--
extra : rebase_source : 5b45b6c0df834131812d094e975047eaad374e06
2017-10-26 11:47:01 +01:00
Andreas Tolfsen 84d01f24d6 Bug 1400256 - Marshal IPC messages to and from frame script. r=whimboo
MozReview-Commit-ID: BTDQDvu2pVE

--HG--
extra : rebase_source : 03f6c064dd0dbe973750cb5cfe5f9ae4ea86aee3
2017-10-05 17:57:17 +01:00
Andreas Tolfsen 453b045c3a Bug 1400256 - Make element.Store work with web elements. r=whimboo
MozReview-Commit-ID: AitZAYFtpoF

--HG--
extra : rebase_source : eabb69bb1e6f39ef17d511f20b033eb760fe55a2
2017-10-05 18:01:35 +01:00
Andreas Tolfsen 3e13cd2cbc Bug 1400256 - Use WebElement.generateUUID to make session ID. r=whimboo
MozReview-Commit-ID: FuYeCDySLu

--HG--
extra : rebase_source : f6945b7e073e0bb95d2fb13927b9229ec691f157
2017-10-05 17:11:26 +01:00
Andreas Tolfsen ac39cffaab Bug 1408508 - Move Context to browser module. r=maja_zf
To avoid circular dependencies, where file A depends on B depending
on A, we should strive towards fewer inter-dependencies and more
autonomy between modules.

For example, if testing/marionette/browser.js needs access to
the Context enum it can currently only attain it by importing
testing/marionette/driver.js.  Because driver.js imports browser.js,
we create a circular dependency and Cu.import enters an infinite
import recursion.

MozReview-Commit-ID: LGiA9sy9xrd

--HG--
extra : rebase_source : f1748894c4309a5bc34b72acd4931d7937e8810e
2017-10-16 17:47:35 +01:00
Sebastian Hengst 164fef69ff Backed out changeset 286a5ba56cec (bug 1408508) for eslint failure at testing/marionette/driver.js:881:50 | 'resp' is defined but never used. r=backout
--HG--
extra : amend_source : becc15136f2e7113ab248154be37dfa2bf923dc9
2017-10-18 20:28:15 +02:00
Andreas Tolfsen 4092fd5b34 Bug 1408508 - Move Context to browser module. r=maja_zf
To avoid circular dependencies, where file A depends on B depending
on A, we should strive towards fewer inter-dependencies and more
autonomy between modules.

For example, if testing/marionette/browser.js needs access to
the Context enum it can currently only attain it by importing
testing/marionette/driver.js.  Because driver.js imports browser.js,
we create a circular dependency and Cu.import enters an infinite
import recursion.

MozReview-Commit-ID: LGiA9sy9xrd

--HG--
extra : rebase_source : e4b69c91b9cf78705c902f1e5038d815b88114d0
2017-10-16 17:47:35 +01:00
Andreas Tolfsen c9ec6362dc Bug 1409379 - Move WindowState to new wm module. r=maja_zf
The upcoming window tracking refactoring to Marionette will introduce
a new testing/marionette/wm.js module.  It was originally the plan
to move WindowState there after it had landed, but it actually makes
sense to land any dependencies before to reduce churn in the window
tracking patches.

MozReview-Commit-ID: EpqnTYYGcmg

--HG--
extra : rebase_source : d6760feefa49c522738fd3930b339bc0af70e6a5
2017-10-17 14:20:52 +01:00
Peter Major 240cafe846 Bug 1407675 - Fix cookie creation via Marionette using IP address r=ato
The issue here was that the cookie domain was always prepended with
'.' character. To resolve this edge-case Marionette now first checks
whether the cookie domain is in fact an IP address.

MozReview-Commit-ID: 4xBd4rscXxx

--HG--
extra : rebase_source : 92bf20ceb43c05f4610e3e0a5411027300586784
2017-10-12 16:06:26 +01:00
Henrik Skupin b5ddfae9aa Bug 1407925 - Don't use application name but ID to determine Firefox. r=ato
MozReview-Commit-ID: 9TZrs4nk31y

--HG--
extra : rebase_source : a79e15619e5b25dd494ba0be5bb0e84ec67dab86
2017-10-12 13:21:17 +02:00
Andreas Tolfsen d416473355 Bug 1405325 - Align WebDriver:DeleteCookie with specification. r=maja_zf
The Delete Cookie command should not return an error if the cookie
does not exist.

The variable names "toDelete" and "candidateName" was also
juxtapositioned and wrong.  Here I am using the approximate names
used in the specification prose for clarity.

Fixes: https://github.com/mozilla/geckodriver/issues/989
MozReview-Commit-ID: 6IIGGpB1JWn

--HG--
extra : rebase_source : f3149d2195c0e871370eef3d2c1306a8212c5751
2017-10-03 16:25:57 +01:00
Andreas Tolfsen a5fa626acc Bug 1404946 - Rename wait.until to PollPromise. r=whimboo
In formalising our synchronisation module, this renames wait.until
to PollPromise.  It is a specialisation of a promise, just like
TimedPromise, that poll-waits a condition for a given amount of time
before either resolving (passing) or rejecting (failing) the poll-wait.

Also fix and improve documentation.

MozReview-Commit-ID: AcP3C1qCgKA

--HG--
extra : rebase_source : d17bb3be0819b0ce9de55d44741836fc00b10f46
2017-10-02 16:50:11 +01:00
Andreas Tolfsen f9a974ff5b Bug 1404946 - Rename wait module to sync. r=whimboo
testing/marionette/wait.js originally contained a utility for
poll-waiting on a condition.  The module has since been expanded to
also include TimedPromise, which is a specialisation of Promise that
is rejected after a duration.

The latter is not a wait utility but a synchronisation primitive.
This terminology also covers the first, and this change renames the
wait module to sync.

MozReview-Commit-ID: Fd3LqfpiEaU

--HG--
rename : testing/marionette/wait.js => testing/marionette/sync.js
extra : rebase_source : f48ff62ca2589ab0ce4a2f3d134d392e6f0be015
2017-10-02 16:38:33 +01:00
Sebastian Hengst a867e38354 Backed out changeset 231a24060d29 (bug 1404946) for linting failure at testing/marionette/driver.js:3054:35 | 'f' is defined but never used. r=backout
--HG--
rename : testing/marionette/sync.js => testing/marionette/wait.js
extra : amend_source : 009478a65c290d4b7540723f157de57dbe19901e
2017-10-09 16:23:15 +02:00
Sebastian Hengst c9b41f4cb7 Backed out changeset bf79d5b1b4b0 (bug 1404946) 2017-10-09 16:23:04 +02:00
Andreas Tolfsen 0fb99a7cd4 Bug 1404946 - Rename wait.until to PollPromise. r=whimboo
Now that we have selective imports through Cu.import we can give
wait.until a more descriptive name that matches TimedPromise.
This patch renames the wait.until utility to PollPromise.

MozReview-Commit-ID: 9gsvAV27mMl

--HG--
extra : rebase_source : ea98d63013d709d52ce234446404233d9dbe572e
2017-10-02 16:59:25 +01:00
Andreas Tolfsen 583c91fabd Bug 1404946 - Rename wait module to sync. r=whimboo
testing/marionette/wait.js originally contained a utility for
poll-waiting on a condition.  The module has since been expanded to
also include TimedPromise, which is a specialisation of Promise that
is rejected after a duration.

The latter is not a wait utility but a synchronisation primitive.
This terminology also covers the first, and this change renames the
wait module to sync.

MozReview-Commit-ID: Fd3LqfpiEaU

--HG--
rename : testing/marionette/wait.js => testing/marionette/sync.js
extra : rebase_source : 5e22ec5e26b5405c928ab26734a8d2ddc5d43785
2017-10-02 16:38:33 +01:00
Henrik Skupin 21872db2c4 Bug 1406150 - Always throw exceptions by using 'new'. r=maja_zf
MozReview-Commit-ID: GmI1PuSQwWU

--HG--
extra : rebase_source : 61d87d94d683094a579d776e10134dc961182969
2017-10-06 14:07:13 +02:00
Andreas Tolfsen d28ce13224 Bug 1405279 - Remove unused variables. r=whimboo
MozReview-Commit-ID: CmiDVCw6xVK

--HG--
extra : rebase_source : e71cfb7da973d95c796a93cc1e4da6f709acf65e
2017-10-03 14:35:47 +01:00
Andreas Tolfsen e3681ac449 Bug 1400226 - Wait for visibilitychange event on window minimize/restore. r=whimboo
The sizemodechange event is not strongly connected to the
visibilitychange event that the WPT minimize_window.py test is now
using to ascertain whether the window has been successfully iconified.

Because Marionette uses the sizemodechange event it is causing
intermittents such as https://bugzil.la/1397007.  You can also read a
lengthy summary I did on the problem in https://bugzil.la/1397007#c11.

The fix for the problem is to wait for the visibilitychange DOM
event content.

MozReview-Commit-ID: B6i33Ee5iMC
2017-09-21 15:02:36 +01:00
Andreas Tolfsen bbf5d23b36 Bug 1396866 - Restore window state on maximizing, minimizing, and fullscreening. r=automatedtester
When maximizing the window we must restore it from iconified state or
exit fullscreen first.  Likewise for minimizing the window, we must
exit fullscreen.  For fullscreening the window we need to also restore
the window.

MozReview-Commit-ID: AOQX2cV2C75

--HG--
extra : rebase_source : 53f310cc261a9a411bc46a04dd50a160a930b5af
2017-09-09 12:20:40 +01:00
Andreas Tolfsen 8a7c17f04e Bug 1396618 - Throttle window minimize and restore r=automatedtester
MozReview-Commit-ID: 5LUWYwURQgs

--HG--
extra : rebase_source : fcc47b5994b356fad670cc56cc03f0976338a950
2017-09-04 16:55:34 +01:00
Henrik Skupin 269febe5eb Bug 1387470 - Use moz:webdriverClick capability for spec conforming element click. r=ato
To allow geckodriver to temporarily opt-in for using the webdriver
conforming click, a new custom capability has to be created for
Marionette. If not specified the legacy clickElement method will
be used instead.

MozReview-Commit-ID: LuyTjLJXMGL

--HG--
extra : rebase_source : 8e133fb2d9767ea580468013fedff5233fd8eb93
2017-09-01 17:11:35 +02:00
Andreas Tolfsen 29f6ebe13f Bug 1394881 - Use Node.isConnected for web element staleness check. r=automatedtester
It turns out that Node.isConnected (described in
https://dom.spec.whatwg.org/#dom-node-isconnected) handles an element’s
shadow root, which element.isDisconnected tries to replicate.

element.isDisconnected and element.isStale are both long and error-prone
and can be removed entirely in favour of this web platform API.

The relevant change to the WebDriver specification landed in
32a477b023.

MozReview-Commit-ID: 5Q0gWLvw8KL

--HG--
extra : rebase_source : 773ab302df27cf11be6079f918a48d3730ceb5c1
2017-08-30 14:22:39 +01:00
Andreas Tolfsen aeb61b530d Bug 1395176 - Lint testing/marionette for var usage. r=automatedtester
MozReview-Commit-ID: FCcyuUVJC7J

--HG--
extra : rebase_source : b6f16c2b2118aff532dd7480304bcd94aa739148
2017-08-30 17:38:23 +01:00
Henrik Skupin 8c9c9c7b11 Bug 1369827 - Make proxy port an optional suffix for the host. r=ato
The WebDriver spec has been changed a while ago in regard of how
proxy capabilities are getting specified. It means that the port
is no longer its own key but an optional suffix for each of the
ftpProxy, httpProxy, sslProxy, and socksProxy keys.

MozReview-Commit-ID: zdYnVZSf09

--HG--
extra : rebase_source : c4928e6170b52a0ee247f50861646ec29a56bd34
2017-08-18 14:49:00 +02:00
Andreas Tolfsen c07ee45e6b Bug 1392339 - Fix misuse of nsIDOMElement in API docs. r=automatedtester
MozReview-Commit-ID: 3q35q6TTbTH

--HG--
extra : rebase_source : 07b2d26874a051a8b6663020ee49dcd20beb286c
2017-08-21 18:56:19 +01:00
Andreas Tolfsen 34a091cffa Bug 1392339 - Fix misuse of nsIDOMWindow in API docs. r=automatedtester
nsIDOMWindow is the XPCOM interface and not what we mean in all these
cases.  We either want to refer to the ChromeWindow or to the WindowProxy,
depending on the context of the code.

MozReview-Commit-ID: 405po1XLXRi

--HG--
extra : rebase_source : 47a179f7caed76592dab28f8e10550cda5fe3d02
2017-08-21 18:52:18 +01:00
Andreas Tolfsen 657e3f287d Bug 1391691 - Make WebDriver:FullscreenWindow idempotent. r=automatedtester
MozReview-Commit-ID: 4AQlYYNV03f

--HG--
extra : rebase_source : 2b4c8bb55292665925411025e952367f1af27123
2017-08-18 18:32:11 +01:00
Andreas Tolfsen a4b0685950 Bug 1391691 - Make WebDriver:MaximizeWindow idempotent. r=automatedtester
MozReview-Commit-ID: EJ0VQOTWysg

--HG--
extra : rebase_source : 8f97877c78c04672acd715db82b98133330372db
2017-08-18 18:31:42 +01:00
Andreas Tolfsen bd75d1ac7c Bug 1391691 - Make WebDriver:MinimizeWindow idempotent. r=automatedtester
MozReview-Commit-ID: 4XBw0UFfZ1O

--HG--
extra : rebase_source : ced1fb5e6add0b2688c3e6cc0740eb9a9e54456a
2017-08-18 18:30:50 +01:00
Andreas Tolfsen d93ed539e8 Bug 1391691 - Rename GeckoDriver#fullscreen to fullscreenWindow. r=automatedtester
The other window state manipulation commands are named minimizeWindow
and maximizeWindow.

MozReview-Commit-ID: IBVqJSRwG8x

--HG--
extra : rebase_source : a1efaf7cf2a5c068b62c60453b1f8814d34b043b
2017-08-18 18:29:47 +01:00
Wes Kocher 75e9f7dbef Backed out 10 changesets (bug 1391691) for wpt failures a=backout
Backed out changeset 666ac679317e (bug 1391691)
Backed out changeset 46f82e1e2cde (bug 1391691)
Backed out changeset 1fd98ace1473 (bug 1391691)
Backed out changeset 5bddbd90ec7c (bug 1391691)
Backed out changeset 4653134d01ef (bug 1391691)
Backed out changeset fd88b612ac2e (bug 1391691)
Backed out changeset 6306abc0b5e9 (bug 1391691)
Backed out changeset 649b0e761c87 (bug 1391691)
Backed out changeset 6c48daaad075 (bug 1391691)
Backed out changeset 17aeed1f6454 (bug 1391691)

MozReview-Commit-ID: 6Cw1QibNQKM

--HG--
extra : rebase_source : 0197f824719f11e113595dd9a4a86b2c8d1fd8fe
2017-08-21 09:19:10 -07:00