Add buildID to returned list of capabilities when a new session is started with
Marionette. This new capability will live in moz:buildID.
Differential Revision: https://phabricator.services.mozilla.com/D18974
--HG--
extra : moz-landing-system : lando
This removes all .flake8 files except for the one at the root of the repo.
Instead we use the new 'per-file-ignores' config introduced in 3.7. To ignore
specific errors in a subdirectory, add a line like this to the root .flake8:
[per-file-ignores]
path/to/subdir/*: E100, F200, ...
The reasons for this change are:
1. Unblock flake8 blacklist (bug 1367092).
2. Simplify configuration and code.
3. Encourage more consistent styling.
4. Improve performance.
5. Greater editor consistency.
Differential Revision: https://phabricator.services.mozilla.com/D18354
--HG--
extra : moz-landing-system : lando
This just adds a layer of indirection between existing startup paths and a
new startup path that GeckoView(-consumers) will exploit.
Differential Revision: https://phabricator.services.mozilla.com/D17579
--HG--
extra : moz-landing-system : lando
This lays the foundation for Marionette to work inside
GeckoView-consuming Apps.
Differential Revision: https://phabricator.services.mozilla.com/D17578
--HG--
extra : moz-landing-system : lando
Sphinx creates an additional directory level unless the entry starts
with "/". By using the aboslute path we can define where we want
the documentation to end up.
This causes the geckodriver and Marionette documentation to move from:
/testing/marionette/marionette
/testing/geckodriver/geckodriver
to:
/testing/marionette
/testing/geckodriver
Depends on D18088
Differential Revision: https://phabricator.services.mozilla.com/D18089
--HG--
extra : moz-landing-system : lando
Fractions of a second are lost because the division
in getting the timeout value operates on decimal valus.
As such a timeout of 100ms will result in 0ms.
Depends on D18214
Differential Revision: https://phabricator.services.mozilla.com/D18219
--HG--
extra : moz-landing-system : lando
This fixes the following regressions as introduced by
bug 1510929 for the Marionette client.
1) The custom timeout as set isn't reset if the
script times out.
2) Fractions of a second for the script timeout are
lost because the division operates on decimal valus.
As such a timeout of 100ms will result in 0ms.
Differential Revision: https://phabricator.services.mozilla.com/D18214
--HG--
extra : moz-landing-system : lando
***
Bug 1514594: Part 3a - Change ChromeUtils.import to return an exports object; not pollute global. r=mccr8
This changes the behavior of ChromeUtils.import() to return an exports object,
rather than a module global, in all cases except when `null` is passed as a
second argument, and changes the default behavior not to pollute the global
scope with the module's exports. Thus, the following code written for the old
model:
ChromeUtils.import("resource://gre/modules/Services.jsm");
is approximately the same as the following, in the new model:
var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
Since the two behaviors are mutually incompatible, this patch will land with a
scripted rewrite to update all existing callers to use the new model rather
than the old.
***
Bug 1514594: Part 3b - Mass rewrite all JS code to use the new ChromeUtils.import API. rs=Gijs
This was done using the followng script:
https://bitbucket.org/kmaglione/m-c-rewrites/src/tip/processors/cu-import-exports.jsm
***
Bug 1514594: Part 3c - Update ESLint plugin for ChromeUtils.import API changes. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D16747
***
Bug 1514594: Part 3d - Remove/fix hundreds of duplicate imports from sync tests. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D16748
***
Bug 1514594: Part 3e - Remove no-op ChromeUtils.import() calls. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D16749
***
Bug 1514594: Part 3f.1 - Cleanup various test corner cases after mass rewrite. r=Gijs
***
Bug 1514594: Part 3f.2 - Cleanup various non-test corner cases after mass rewrite. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D16750
--HG--
extra : rebase_source : 359574ee3064c90f33bf36c2ebe3159a24cc8895
extra : histedit_source : b93c8f42808b1599f9122d7842d2c0b3e656a594%2C64a3a4e3359dc889e2ab2b49461bab9e27fc10a7
The window should always be restored first to the normal window state,
before a special state like fullscreen or minimized can be entered.
Right now this isn't done when going from a maximized window into
fullscreen mode, or when minimizing the window.
Differential Revision: https://phabricator.services.mozilla.com/D17472
--HG--
extra : moz-landing-system : lando
Marionette should do its best to get the browser into the requested
window state, but if it is not possible to do so, it shouldn't raise
a timeout error. This is mostly the case when running tests under
xvfb with no window manager running. Instead we just log the
message for further investigation.
Further the timeout value has to be set to a value which wouldn't
cause the commands to inappropriately fail due to animations, or
a slow machine.
Differential Revision: https://phabricator.services.mozilla.com/D17144
--HG--
extra : moz-landing-system : lando
As we move away from #ateam we need to make sure we that we point people to
the correct IRC Channel
Differential Revision: https://phabricator.services.mozilla.com/D16547
--HG--
extra : moz-landing-system : lando
An unexpected remoteness change can cause the
"WebDriver:FindElement" command to hang forever.
To avoid that already pre-load a web page which
enables the remoteness flag.
Differential Revision: https://phabricator.services.mozilla.com/D16306
--HG--
extra : moz-landing-system : lando
To detect when the window got minimized usally "visibilitychange" events
are fired to the content window. The "WebDriver:MinimizeWindow" command
has to wait for those.
Depends on D16096
Differential Revision: https://phabricator.services.mozilla.com/D16098
--HG--
extra : moz-landing-system : lando
The patch updates the Marionette client and all Marionette unit
tests to make use of the new `Create Window` command as much as
possible.
Depends on D13663
Differential Revision: https://phabricator.services.mozilla.com/D13664
--HG--
extra : moz-landing-system : lando
By default PollPromise has to behave similar to a normal Promise
and wait forever until it gets resolved or rejected.
Depends on D13662
Differential Revision: https://phabricator.services.mozilla.com/D15907
--HG--
extra : moz-landing-system : lando
To be closer to other test harnesses which are using executeSoon()
to run a task on the main thread, this patch adds the same
method to Marionette's sync module.
Differential Revision: https://phabricator.services.mozilla.com/D13659
--HG--
extra : moz-landing-system : lando