According to the spec, when we cancel an animation we should "reset an
animation's pending tasks"[1] which has following step:
...
4. Reject animation’s current ready promise with a DOMException named "AbortError".
5. Let animation’s current ready promise be the result of creating a new resolved Promise object.
Since we create the ready promise and, if need resolve it when we create it
(see Animation::GetReady), this patch simply clear the ready promise
when an animation is canceled.
[1] https://w3c.github.io/web-animations/#reset-an-animations-pending-tasks
MozReview-Commit-ID: JxoqeA5dXCO
--HG--
extra : rebase_source : 1c51724f236b3ed464eb6af3c20ccc9aaf5aa3e6
The test times out on master and dev edition but not on normal beta. Since
this is difficult to handle in ini files just disable the entire test until there's
a proepr fix for the underlying issue.
MozReview-Commit-ID: B3d7MElHy86
--HG--
extra : rebase_source : eaff065fb42f046173281c713c55ec6a977da812
* removes old files mobile/android/config/mozconfigs/*/{release,l10n-release}
* updates merge day scripts (did some config dumping to verify, but didn't run migration)
* updates testing/mozharness/configs/single_locale/{staging_,}mozilla-{beta,release}_android-api-15.py to remove bogus mozconfig definition, which now comes from single_locale/tc_android-api-15.py
I could go on and look at configs/multi_locale, which appear to be unused, but I've got to draw a line somewhere.
MozReview-Commit-ID: 2zLYlMj0B9t
--HG--
extra : rebase_source : 2aee89720391890fd0c637589282af0066edb4bc
Previously, mock_runner.driverclass() returned a plain Mock object.
MozReview-Commit-ID: 1RMQhud4BJD
--HG--
extra : rebase_source : 54d7f62444e66bc2f9ae07c0b5ed91cd9a3cbbaf
Bug 1356952 defined tooltool manifest at the taskcluster job definition.
This makes many definitions from mozharness now redundant.
While this would ideally have been done in bug 1356952, some of those
definitions are likely to still be used by some buildbot job or some
obscure taskcluster job seldomly triggered. Preparing for the
possibility that this might burn some jobs, making this removal
backout-able independently allows other work to happen on top of bug
1356952 without the risk of everything having to be backed out because
of some random bustage.
--HG--
extra : rebase_source : 73fdb7747a51ddc57fe41a9493893e293cd3bbc4
SpecialPowers has been removed from Marionette, and this method does not
appear to be used anywhere in mozilla-central.
MozReview-Commit-ID: 3hkPVNJw0iA
--HG--
extra : rebase_source : a5cb71ece7d40dbbcb9ae5a532b74d69cd7b209c
This will create a mochitest selftest harness based on |mach python-test|. There
is also a basic test that checks whether TEST-PASS and TEST-UNEXPECTED-FAIL work.
MozReview-Commit-ID: Jqyhbj7nC6z
--HG--
extra : rebase_source : d73b37305590a415e350ee45785a85635e7d4209
This ensures that developers can run the majority of tests with the
default config, but makes things a little more confusing for marionette
developers.
MozReview-Commit-ID: 9wd761ZgCyx
--HG--
extra : rebase_source : d601fa10d1896afd3c450b2d44a2024b9963096f
When a call through the content frame proxy is interrupted by the
dialogueObserver, the synchronous promise that is meant to wait for a
response from the frame script is resolved immediately with an undefined
return value.
When an undefined value is assigned to the response body, it gets dropped
during JSON serialisation. To ensure the "value" field expected from
the Execute Script and Execute Async Script commands is populated,
we need to assign a null value to resp.body.value.
We can treat undefined as null by calling evaluate.toJSON again on the
return value from the proxied frame script call. This effectively means
we serialise it twice, since it first needs to be serialised to cross
the IPC border, though the second computation only looks at primitives
and no known web element store is required.
It would be nicer if the content frame script itself would be able to
return early with null by installing a user prompt notification event,
but this is not possible because the tabmodal dialogue that appears
blocks script execution. This means we need to rely on the
dialogueObserver in testing/marionette/proxy.js to take care of the
dialogue for us.
MozReview-Commit-ID: D14TA2TYYXI
--HG--
extra : rebase_source : 5fc17a1f0786e2fc9a2d054ef7c1f8b0e3336906
Removes the Marionette.import_script API as it is not used by any
consumers of the client, including the Firefox UI tests.
MozReview-Commit-ID: 3xceYXZZVR0
--HG--
extra : rebase_source : 7422704737da599704125874a6f52e4eeb670dfd
The import script functionality was removed in
https://bugzilla.mozilla.org/show_bug.cgi?id=1368648, but the
Marionette.clear_imported_script API was not removed from the client.
We are currently making calls after every test to the clearImportedScripts
command in the server, but we are apparently ignoring the ‘unknown
command’ error that is being returned.
MozReview-Commit-ID: KVjh2IfhuUY
--HG--
extra : rebase_source : ebc8faf8746e7e3e91b395ec488aeea014747848
This environment variable works on both Windows and Linux for force-disabling
the content sandbox, and now does so on macOS as well.
The xpcshell tests force disable the sandbox because they do things like bind()
sockets, which is not compatible with the content sandbox. This is needed now
because bug 1358223 was force upgrading the sandbox from level 0 (disabled) to
level 1 on beta channel, which caused breakage.
MozReview-Commit-ID: 5DGxtoDLp0C
--HG--
extra : rebase_source : 87edd138e8b711eace5cb8103c67feae0361e148
Also bypasses bug 1371332 by ignoring MozAfterPaint events with empty rects.
MozReview-Commit-ID: GSBlPSrQxo9
--HG--
extra : rebase_source : 981d2f42285c843599a3ecad4225917cdcc4b536
When a call through the content frame proxy is interrupted by the
dialogueObserver, the synchronous promise that is meant to wait for a
response from the frame script is resolved immediately with an undefined
return value.
When an undefined value is assigned to the response body, it gets dropped
during JSON serialisation. To ensure the "value" field expected from
the Execute Script and Execute Async Script commands is populated,
we need to assign a null value to resp.body.value.
We can treat undefined as null by calling evaluate.toJSON again on the
return value from the proxied frame script call. This effectively means
we serialise it twice, since it first needs to be serialised to cross
the IPC border, though the second computation only looks at primitives
and no known web element store is required.
It would be nicer if the content frame script itself would be able to
return early with null by installing a user prompt notification event,
but this is not possible because the tabmodal dialogue that appears
blocks script execution. This means we need to rely on the
dialogueObserver in testing/marionette/proxy.js to take care of the
dialogue for us.
MozReview-Commit-ID: D14TA2TYYXI
--HG--
extra : rebase_source : 3b2405111b0f027b1fd6281d075ab6dbb2259591
This is required for cases where files have not changed but the
manifest logic has changed.
MozReview-Commit-ID: E46HtouILS2
--HG--
extra : rebase_source : f9d350018752f866052cf6a7a1ffd8f1d5f4ee39
In case a quit or restart is requested, but eg. the in_app
callback doesn't really trigger a shutdown of the application,
Marionette has to force close it after the default shutdown
timeout.
This is necessary because "acceptConnections" is set to false
and no further connection could be made to the still running
application.
MozReview-Commit-ID: GwSeYyjI6M9
--HG--
extra : rebase_source : 52a9b0dcc2b8b7710925f25ec48f4ad5b5e96c64
This implements the geckodriver support for the Fullscreen Window command.
The API was introduced in the webdriver crate in
https://github.com/mozilla/webdriver-rust/pull/100
MozReview-Commit-ID: 3eIuLmGWl2x
--HG--
extra : rebase_source : 55b38b1ff2850d44b79270194874e7418d34a907