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

255 Коммитов

Автор SHA1 Сообщение Дата
Andreas Tolfsen 3439836809 bug 1491288: webdriver: release 0.38.0; r=whimboo
Differential Revision: https://phabricator.services.mozilla.com/D7300

--HG--
extra : moz-landing-system : lando
2018-10-03 15:00:00 +00:00
Andreas Tolfsen 27cdbdb5f2 bug 1495475: webdriver: warn on using desiredCapabilities/requiredCapabilities r=whimboo
This emits a warning when the webdriver library reverts to using the
legacy Selenium-styled capabilities negotiation for new sessions.
It provides a helpful link which will explain to users how to update.

Differential Revision: https://phabricator.services.mozilla.com/D7305

--HG--
extra : moz-landing-system : lando
2018-10-02 06:50:22 +00:00
Henrik Skupin 164c4189d5 Bug 1494637 - [geckodriver] Only serialize non null arguments for Marionette. r=ato
Differential Revision: https://phabricator.services.mozilla.com/D7210

--HG--
extra : moz-landing-system : lando
2018-09-29 15:34:38 +00:00
Henrik Skupin 421c63d12b Bug 1494617 - [geckodriver] Fix evaluation of "desiredCapabilities" and "requiredCapabilities". r=ato
The refactoring of the webdriver crate to use Serde (bug 1396821)
caused this regression. By instructing Serde to correctly rename
both properties fixes it.

Differential Revision: https://phabricator.services.mozilla.com/D7079

--HG--
extra : moz-landing-system : lando
2018-09-27 12:06:00 +00:00
Kerem Kat 6d86e85fe6 bug 1453292: webdriver, geckodriver: remove elementTap command r=whimboo
Removes the non-standard /session/{session id}/element/{element
id}/tap endpoint command from geckodriver.

Differential Revision: https://phabricator.services.mozilla.com/D6879

--HG--
extra : moz-landing-system : lando
2018-09-26 09:49:03 +00:00
Andreas Tolfsen e7529b1b4e bug 1492647: webdriver: remove unused travis config; r=whimboo
DONTBUILD
2018-09-21 13:34:56 +01:00
Andreas Tolfsen 20e8887560 bug 1492647: webdriver: remove unused ignore files; r=whimboo
The rules in the .gitignore file are duplicated by the root-level
.gitignore file, and the .hgignore file does not take effect because
hg does not subdirectory ignore files.

DONTBUILD
2018-09-21 13:34:55 +01:00
Henrik Skupin 57497a5de9 Bug 1491751 - [geckodriver] "Pause" action primitive should allow duration to be optional. r=ato
--HG--
extra : rebase_source : 30beb3aa731307fe7ff3e555215343829592f395
2018-09-17 13:32:31 +02:00
Andreas Tolfsen 521392abff bug 1490660: webdriver: release 0.37.0; r=jgraham 2018-09-12 16:12:21 +01:00
Andreas Tolfsen 7938992cbc bug 1490660: webdriver: correct README; r=jgraham
The usage example is out of date, and the URLs for the mailing list
archive and the WebDriver specification were wrong.
2018-09-12 16:12:20 +01:00
Henrik Skupin c57a94b724 Bug 1489141 - [webdriver] Ignore any unknown variant of enum PointerOrigin.
To keep backward compatibility, the legacy "ELEMENT" key for an
instance of PointerOrigin has to be supported, but ignored.

This workaround can be removed once legacy support gets dropped
from geckodriver.

--HG--
extra : rebase_source : 9b098010d6f880eafc8d0223e17f47d8e5d15d7d
2018-09-07 11:27:04 +02:00
Bastien Orivel 7ef3fa6f4a Bug 1489792 - Part 1: Update base64 to 0.9. r=ato 2018-09-11 10:18:40 +01:00
Andreas Tolfsen ee01f5fc41 Bug 1487986: webdriver: prefer x.is_empty() over x.len() == 0; r=whimboo 2018-09-04 13:40:23 +01:00
Andreas Tolfsen ec4e9c209f Bug 1487993: webdriver: avoid explicitly calling iteration protocols; r=whimboo
Instead of making explicit calls to iterator protocol methods such as
x.iter() or x.into_iter(), we can loop over references to collections.
This is considered better style.
2018-09-04 13:36:52 +01:00
Andreas Tolfsen de10473139 Bug 1487989: webdriver: deref matched expressions; r=whimboo
Instead of accessing each variant using a reference, we should
dereference the matched expression when possible.
2018-09-04 13:31:04 +01:00
Andreas Tolfsen 294c2888da Bug 1488004: webdriver: use separators in MAX_SAFE_INTEGER definitiion; r=whimboo
This silences a clippy warning.
2018-09-03 13:38:04 +01:00
Andreas Tolfsen 67208e4a69 Bug 1487999: webdriver: simplify cloning of merged_capabilities; r=whimboo
We clone merged_capabilities in the CapabilitiesMatching implementation
for SpecNewSessionParameters::match_browser using x.map(|x| x.clone()),
but this can be simplified to x.cloned().
2018-09-03 13:36:18 +01:00
Andreas Tolfsen 44c951f617 Bug 1487997: webdriver: fix needless string formatting; r=whimboo
Also fixes some x.or() to x.or_else() so that the closures are not
evaluated unless they have to be.
2018-09-03 13:33:54 +01:00
Andreas Tolfsen 37b65772af Bug 1487995: webdriver: avoid redundant mapping closure; r=whimboo
The deserialised value is already Some({u,i}64).
2018-09-03 13:30:12 +01:00
Andreas Tolfsen 1e4772b8d2 Bug 1487994: webdriver: fixup; r=me
DONTBUILD
2018-09-03 13:22:49 +01:00
Andreas Tolfsen c988c68b51 Bug 1487994: webdriver: avoid unnecessary passing by value; r=whimboo
In some places we pass variables by value unnecessarily.  In these
cases it would be more memory efficient to pass a reference so that
we avoid copying.
2018-09-03 13:22:21 +01:00
Andreas Tolfsen 292ccb492a Bug 1487992: webdriver: drop redundant return statements; r=whimboo 2018-09-03 13:14:36 +01:00
Andreas Tolfsen 9bc5fc461c Bug 1487988: webdriver: make single character patterns use chars; r=whimboo
Single-character constant patterns should be made into chars as
these are faster to use and does not require heap memory allocation.
2018-09-03 13:04:13 +01:00
Andreas Tolfsen f1a3d4b004 Bug 1487985: webdriver: stop throwing away error causes; r=whimboo
Instead of using a catch-all that ignores the error cause, we can
print the cause as part of the panic.

Eventually the error handling in this function should be fixed to
not panic at all, obviously.
2018-09-03 13:00:48 +01:00
Andreas Tolfsen 609dca1491 Bug 1487808: webdriver: remove redundant field names in struct init; r=whimboo 2018-09-01 13:44:20 +01:00
Henrik Skupin 236500c717 Bug 1486793 - [webdriver] Fix regression in "Take Element Screenshot" from conversion to Serde. r=ato
The command "Take Element Screenshot" expects the web element as
parameter, and not as part of the body.

--HG--
extra : rebase_source : 6ca78d005cae65273d0d6045ac60e80e993b55bd
2018-08-29 10:15:32 +02:00
Henrik Skupin 7bc6f073f7 Bug 1486467 - [webdriver] Rename sessionId to session_id for NewSessionResponse. r=ato
--HG--
extra : rebase_source : 542438b1f806f88167088680eb0d190d720a9327
2018-08-27 16:44:35 +02:00
Henrik Skupin 7a91a1ff80 Bug 1486467 - [webdriver] Rename pageLoad to page_load for TimeoutsResponse. r=ato
--HG--
extra : rebase_source : 5ba52f628420b37033fb8dccdc9a2f65ad66136e
2018-08-27 16:44:06 +02:00
Henrik Skupin ff8893e19a Bug 1485580 - [geckodriver] Make parsing of float timeout values spec conforming. r=jgraham
--HG--
extra : rebase_source : 5efb1c8db234cecbd07f478e95bb9f3b8bb0b785
2018-08-23 09:59:39 +02:00
Bastien Orivel 963e21bf7f Bug 1484462 - Update webdriver to hyper 0.12. r=ato 2018-08-23 13:15:22 +01:00
Andreas Tolfsen 1efbde8664 Bug 1485414 - Make lazy_static a dev dependency. r=whimboo
This silences an unused macro_use warning at build time.
2018-08-23 11:55:12 +01:00
Andreas Tolfsen a4bf4db586 Bug 1484941 - Change ErrorStatus::{ScriptTimeout,Timeout} HTTP codes from 408 to 500. r=whimboo
Whilst it is logically correct to use 408 for the
ErrorStatus::ScriptTimeout and ::Timeout errors, it
causes a collision with HTTP semantics implement in HTTP clients.
To support Keep-Alive we allow retries in HTTP clients and if a
client sees code 408 it thinks that the server has gone away and
retries the request.

This causes WebDriverCommand::ExecuteScript, ::Get, and ::Refresh
commands to be sent twice with some HTTP clients.

This is a backwards incompatible change to WebDriver in order to
not break HTTP/1.1 Keep-Alive.
2018-08-23 11:48:24 +01:00
Henrik Skupin f06c122d06 Bug 1396821 - [geckodriver] Apply rustfmt on other webdriver modules. r=ato
MozReview-Commit-ID: LLLVkRvL08O

--HG--
extra : rebase_source : 7253a43473aa05fde2005f938b9fe04dd645426c
2018-08-22 10:26:46 +02:00
Henrik Skupin 121e071db6 Bug 1396821 - [geckodriver] Switch webdriver crate from rustc_serialize to serde. r=ato
The patch switches the serialization and deserialization of data
structures from the rustc_serialize crate to serde. By doing that
all the custom code for serialization and deserialization can be
removed in favor of serde's automatically derived serializers and
deserializers.

MozReview-Commit-ID: F25p325gbiC

--HG--
extra : rebase_source : 362300476b0ce670cc457320c76db3929d673b65
2018-08-22 10:26:19 +02:00
Andreea Pavel 0bcfe81a06 Backed out 6 changesets (bug 1396821) for linux tier2 build bustages on a CLOSED TREE
Backed out changeset 2fa2975f97e3 (bug 1396821)
Backed out changeset c5895db52483 (bug 1396821)
Backed out changeset 5c0ddd45f926 (bug 1396821)
Backed out changeset 7c97853a85b9 (bug 1396821)
Backed out changeset b61ce753f01e (bug 1396821)
Backed out changeset 7ef3912feb2c (bug 1396821)

--HG--
rename : third_party/rust/serde_json/LICENSE-APACHE => third_party/rust/rustc-serialize/LICENSE-APACHE
rename : third_party/rust/serde_json/LICENSE-MIT => third_party/rust/rustc-serialize/LICENSE-MIT
2018-08-21 20:20:24 +03:00
Henrik Skupin e565b85469 Bug 1396821 - [geckodriver] Apply rustfmt on other webdriver modules. r=ato
MozReview-Commit-ID: LLLVkRvL08O

--HG--
extra : rebase_source : a8fc7b929c8005470394de5df14a0d8e67ff95a0
2018-08-17 14:56:05 +02:00
Henrik Skupin 1cf0042ddf Bug 1396821 - [geckodriver] Switch webdriver crate from rustc_serialize to serde. r=ato
Instead use serde. This is the simplest possible conversion using the
serde Value type everywhere. The intent is to use the automatically
derived deserializers in the future.

MozReview-Commit-ID: F25p325gbiC

--HG--
extra : rebase_source : 661316cf0f1b1f395b3c7166890f13477036f877
2018-06-11 17:49:22 -07:00
Henrik Skupin 9ee317f115 Bug 1469601 - [webdriver] Fix Add Cookie command to raise an "invalid argument" error if parameters are null. r=ato
--HG--
extra : rebase_source : 21ac59e93053ef109e92ae36c10f4d744bb9a95a
2018-08-14 17:25:17 +02:00
Andreas Tolfsen 015c30f932 Bug 1470659 - Add setWindowRect capability to geckodriver. r=automatedtester
It will never be possible to configure setWindowRect, and trying
to do so will cause geckodriver to return with an error.
2018-08-01 18:31:25 +01:00
Andreas Tolfsen e5126976b6 Bug 1471201 - Increase webdriver HTTPD Keep-Alive timeout to 90s. r=automatedtester
Increasing geckodriver's Keep-Alive timeout duration to 90
seconds, from the default five seconds, will reduce the number of
HTTP connections a persistent-enabled client will have to make,
potentially boosting performance.

In more recent hyper versions the default is 90 seconds, which
means we can get rid of this line when hyper is upgraded.

This will help mitigate https://github.com/mozilla/geckodriver/issues/1304
but not fundamentally resolve it, due to a standard library bug in
Python 2.7's urllib.

MozReview-Commit-ID: 98AFDQgWfpw

--HG--
extra : rebase_source : 75ce5a143533134b60848f2351aab60778c53d78
2018-07-05 12:50:33 +01:00
Andreas Tolfsen 55d5e3a0c1 Bug 1408509 - Support web elements, frames, and windows in geckodriver. r=whimboo
This makes geckodriver support WebDriver web elements, web frames,
and web windows.

Marionette sends back JSON Objects such as

	{<element key>: <uuid>}

where the element key is one of the unique strings this patch adds
to geckodriver::marionette.

MozReview-Commit-ID: HegkGFqxkms

--HG--
extra : rebase_source : 88d51ac29b429124e2e321c0cccda949397fd307
2018-06-19 19:04:36 +01:00
Andreas Tolfsen ab335461ae Bug 1441204 - Release webdriver crate 0.36.0. r=maja_zf
MozReview-Commit-ID: 1C5QHSWGZZu

--HG--
extra : rebase_source : 7defa01add7516b6e71846d1f39ac0fdcf986b87
2018-06-14 13:28:33 -07:00
Andreas Tolfsen 988a7b847b Bug 1441204 - Upgrade unicode-segmentation from 1.1.0 to 1.2.1. r=maja_zf
MozReview-Commit-ID: 1KUU2U7AVz4

--HG--
extra : rebase_source : fe6951e60f80fe09ea215b05213116087a3af3b9
2018-06-14 13:01:20 -07:00
David Burns 4c3540e6ae Bug 1468398: Allow Keep Alive connections in geckodriver r=jgraham
MozReview-Commit-ID: 9lX9qgMgDJi

--HG--
extra : rebase_source : 6dbb9eb161a612db641d4076cb994c1ccea46e9d
2018-06-12 22:31:01 +01:00
Henrik Skupin aa6c77e3ca Bug 1468185 - [geckodriver] Add support for all unhandledPromptBehavior options. r=ato
geckodriver currently only supports "accept" and "dismiss".
But to be compliant with the WebDriver specification all
allowed options have to be supported.

Given that Marionette uses the hard-coded dismiss and notify
behavior for unexpected prompts, inappropriately marked as
failed tests for accept/dismiss + notify for
execute_(async_)script will pass now.

MozReview-Commit-ID: 14kRTpvJYjZ

--HG--
extra : rebase_source : 71054e6ff066b9a2c0541e223cdf25136fc4ff85
2018-06-11 08:50:58 -07:00
Henrik Skupin 8b962cb10a Bug 1461463 - [geckodriver] Empty response value should be null and not {}. r=ato
WebDriver commands which do not return a value have to send null.
But currently geckodriver returns an empty object.

MozReview-Commit-ID: EEmNlbmxu5n

--HG--
extra : rebase_source : aaa09cb5d8470b9669b8046ead62d709111f7f04
2018-05-17 15:56:39 +02:00
Bastien Orivel 3eb765c7e3 Bug 1463251 - Part 1. Update regex in both webdriver and geckodriver. r=ato,jgraham
Also bump webdriver's version so it can be released and updated in servo

MozReview-Commit-ID: 7jMycZ6t3mm

--HG--
extra : rebase_source : 44d0b436e303d427a8b4c06e5b97538a76fd3f8c
2018-05-21 22:24:30 +02:00
Andreas Tolfsen 4dcf6c50b7 Bug 1401129 - Release webdriver 0.35.0. r=whimboo
MozReview-Commit-ID: lnoyZZbtcF

--HG--
extra : rebase_source : c43d960f793cd3d3eed922ac8ebe31d9a0564d12
2018-03-08 16:05:08 +00:00
Greg Fraley e6f4df94b9 Bug 1396823 - Use unicode-segmentation to iterate graphemes instead of chars r=ato
MozReview-Commit-ID: 8QsOmtXDnGI

--HG--
extra : rebase_source : 0af1eb0af8d23346a1b20ac6a04964d974232850
2018-03-06 21:31:14 -05:00
Henrik Skupin a9795130f4 Bug 1442028 - Move webdriver actions into its own module. r=ato
MozReview-Commit-ID: Bf0Ut8AGwtl

--HG--
extra : rebase_source : 4d90cb2c8e1b018a048a76805243eb01a646c326
2018-02-28 22:31:47 +01:00