OSX (cross) repackages are currently using a tooltool manifest to get
libdmg and hfsplus. Change those jobs to use the toolchain artifacts
instead.
At the same time, modify the repackage mozharness script's _run_tooltool
so that it doesn't fail with MOZ_TOOLCHAINS being set but without a
tooltool_manifest_src, matching the similar function in buildbase.py.
--HG--
extra : rebase_source : d128d4709c5d1d28d1a6b9c585fde82e99f725c7
It turns out that in all cases it was the last tooltool manifest entry,
so we can remove the tooltool manifests entirely, and remove all
references to them.
--HG--
extra : rebase_source : d8447b5422e63e88444008fddb76d658829694de
We're about to remove some tooltool manifests, so we need those calls to
work properly when TOOLTOOL_MANIFEST is not set.
--HG--
extra : rebase_source : 89d41021a87915dc9133e61543352e3bda1dace4
According to :birtles, it is not guaranteed that animationiteration
event will be fired. This event is sample-based rather than event-based,
and such behavior has been clarified in CSS Animations Level 2:
https://drafts.csswg.org/css-animations-2/#event-dispatch
Also, Chromium has the same issue with this test:
https://bugs.chromium.org/p/chromium/issues/detail?id=701445
MozReview-Commit-ID: KBCzkGHxbfc
--HG--
extra : rebase_source : 0b187471ee7625316ad8c85dc1698cb7099dc887
This removes the subcommands for "./mach geckodriver", reverting
it back to have the meaning of running the geckodriver binary.
The build- and test commands are now integrated with mach, which
means you can run "./mach build testing/geckodriver" and "./mach
test testing/geckodriver" to run tests. This is backed by a new
top-level "./mach geckodriver-test" command, which we will not be
announcing.
MozReview-Commit-ID: CiQsfNqrvIp
--HG--
extra : rebase_source : 6c492b7e1128e4858e42ae4bb35ab4b29564dbeb
This makes several changes to make the 'mach' format cleaner and easier to
read. Some of the changes include:
* No longer print the 'action' no matter what. Printing the action for things
like 'log' or 'process_output' was redundant and caused verbosity. Now this
is done on a case by case basis (things like TEST-START/TEST-END will still
have their actions printed).
* Color coded the process id for 'process_output' actions. This is a dim cyan
to avoid conflicts with other actions.
* No longer quoting 'process_output' messages
* No longer printing thread information. In 99% of the case, this was just
dumping 'MainThread' over and over again. Perhaps printing this could be an
option on the formatter.
* Muted timestamps to help the important parts stand out better
* Colorized suite summary headings
* Unexpected statuses in _format_expected() are always red (never yellow).
This is to help make it stand out from all the other yellow text that gets
printed.
* Internal cleanup/refactoring
MozReview-Commit-ID: LAuYfqYkUPe
--HG--
extra : rebase_source : 6cab1bc3e38838f200f90acc2fff8dcad3d394f3
The suite name is no part of the suite_start message and can be printed via a
mozlog formatter. We shouldn't be printing this directly to stdout from |mach
mochitest|.
MozReview-Commit-ID: TOuqfEF14
--HG--
extra : rebase_source : 23bb214e6c1eedccf95abe08bb06b187728599d5
This makes sure the mozterm module is available to the testers. The
setup.py was needed to it could be installed from requirements.txt.
This module does not yet live on pypi.
MozReview-Commit-ID: 9AL0EZ1uVgL
--HG--
extra : rebase_source : 882d4ec5ec9b80f20ca63e5c7303752427b390d2
This makes several changes to make the 'mach' format cleaner and easier to
read. Some of the changes include:
* No longer print the 'action' no matter what. Printing the action for things
like 'log' or 'process_output' was redundant and caused verbosity. Now this
is done on a case by case basis (things like TEST-START/TEST-END will still
have their actions printed).
* Color coded the process id for 'process_output' actions. This is a dim cyan
to avoid conflicts with other actions.
* No longer quoting 'process_output' messages
* No longer printing thread information. In 99% of the case, this was just
dumping 'MainThread' over and over again. Perhaps printing this could be an
option on the formatter.
* Muted timestamps to help the important parts stand out better
* Colorized suite summary headings
* Unexpected statuses in _format_expected() are always red (never yellow).
This is to help make it stand out from all the other yellow text that gets
printed.
* Internal cleanup/refactoring
MozReview-Commit-ID: LAuYfqYkUPe
--HG--
extra : rebase_source : 41aa8651fc8d182bfcbd57c1d97b1bee437d478c
The suite name is no part of the suite_start message and can be printed via a
mozlog formatter. We shouldn't be printing this directly to stdout from |mach
mochitest|.
MozReview-Commit-ID: TOuqfEF14
--HG--
extra : rebase_source : ebcf6e37b77a0ca1e6da242df9066d4b41286d5c
This makes sure the mozterm module is available to the testers. The
setup.py was needed to it could be installed from requirements.txt.
This module does not yet live on pypi.
MozReview-Commit-ID: 9AL0EZ1uVgL
--HG--
extra : rebase_source : 4052f60e5e793d912045a9bd420d70c59e8a69fb
Check /proc/cpuinfo on android and extract the "bogomips" reading: If it is < 250, retry
the task, since there appears to be a higher probability of tests running too slowly
in such environments.
Capabilities are currently sent to the content frame script when
its IPC message listeners attach (on Marionette:ListenersAttached).
If for whatever reason a capability's value changes since the script
was registered, for example by a user calling the WebDriver:SetTimeouts
command, a race condition is introduced where the capabilities in
chrome will differ from those cached in the frame script.
To remove any chance of race conditions, this patch changes the
content frame script to query the capabilities from chrome every time
it needs them. This is slightly less efficient, but should be neglible.
The patch also clears up some unused state, such as the
curBrowser.newSessionCommandId property, which did not appear to
be used for anything interesting.
MozReview-Commit-ID: 1bSrRu5nK3h
--HG--
extra : rebase_source : 06f6fb8e4a6d04e5c4fa56d1becafd55ed0d1dee
..and remove support for when.files-changed in the test kind. It is still used
for other kinds, and that will be addressed in other bugs.
This is re-landing of this bug, now without running test-verify excessively.
MozReview-Commit-ID: GBilXAktICZ
--HG--
extra : rebase_source : 6cc9a3b5a365d74689946bfa0296f51bc08c2113
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.
That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks. The tasks do not run by default.
MozReview-Commit-ID: G9tOK0AwtrI
--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
This is a partial revert of
ce1d8cd232
If you're in a shadow tree, you may not be slotted but you still need to look at
the slotted rules, since a <slot> could be a descendant of yours.
Just use the same invalidation map everywhere, and remove complexity.
This means that we can do some extra work while trying to gather invalidation
if there are slotted rules, but I don't think it's a problem.
The test is ported from https://cs.chromium.org/chromium/src/third_party/WebKit/LayoutTests/fast/css/invalidation/slotted.html?l=1&rcl=58d68fdf783d7edde1c82a642e037464861f2787
Curiously, Blink fails the test as written, presumably because they don't flush
styles from getComputedStyle correctly (in their test they do via
updateStyleAndReturnAffectedElementCount), due to <slot>s not being in the flat
tree in their implementation.
MozReview-Commit-ID: 6b7BQ6bGMgd
This enables the syntax like:
./mach try fuzzy dom/indexedDB
This will open up the fzf interface like normal, except only tasks
that have tests under dom/indexedDB will be selectable (and there
will only be one chunk per configuration).
This can be combined with -q/--query like normal:
./mach try fuzzy dom/indexedDB -q "!pgo !cov !asan"
When the tasks get scheduled, only the tests under the specified
path(s) will run within the harness.
MozReview-Commit-ID: IHRXXi5mB4G
--HG--
extra : rebase_source : 8a89f255591e6dfa31b1420196c4698f2015d10c
When MOZHARNESS_TEST_PATHS is set, the test suite mozharness scripts
will run the paths specified there instead of the normal chunking
and/or default manifest. Paths should be separated by a ':' character.
In the case of web_platform_tests.py, we have to make the test paths
relative to 'testing/web-platform'.
MozReview-Commit-ID: IHRXXi5mB4G
--HG--
extra : rebase_source : 17b31ec19a64ab16918d0bd80d19d9bb496cbe37
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.
That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks. The tasks do not run by default.
MozReview-Commit-ID: G9tOK0AwtrI
--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
If Marionette handles the instance of the application including the
user profile, the tests should be able to change the user profile.
This will enable tests to cover specific bugs in the application as
caused by the profile name and path.
To prevent dataloss changing the profile should only be allowed
when the application is not running.
MozReview-Commit-ID: JWQGV4JWP61
--HG--
extra : rebase_source : 18270e9790f11fffc2a33a231dbc8229a1bf12d2
Most of the Shadow DOM related code are behind "dom.webcomponents.enabled" and
this pref is only used by Shadow DOM right now, so we should rename it to
"dom.webcomponents.shadowdom.enabled"
MozReview-Commit-ID: er1c7AsSSW
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.
That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks. The tasks do not run by default.
MozReview-Commit-ID: G9tOK0AwtrI
--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
MozReview-Commit-ID: 8uF8QbgyTcv
* Bug 1419326 - Run DAMP open/reload/close tests against a document specific to debugger
MozReview-Commit-ID: 9noPqOrsCK1
--HG--
extra : rebase_source : 511bf071d1d4664d4fd3588c5fd7cf89fbad535b
With the request to shutdown the browser, a given amount of time
has to be waited to allow the process to shutdown itself. Only
if the process is still running afterward it has to be killed.
Firefox has an integrated background monitor which observes
long running threads during shutdown, and kills those after
65s. To allow Firefox to shutdown on its own, geckodriver
has to wait that time, and some additional seconds.
MozReview-Commit-ID: 4LRLQE0jZzw
--HG--
extra : rebase_source : c33c163d4d06768ea6616b97a25f986f5ea37e5d
The PATH defined for mingw builds was cargo culted, lacks
/usr/local/bin, and contains things that are pretty much useless these
days, now that we're off buildbot. Similarly, LD_LIBRARY_PATH is
useless.
While many other similar changes could be done to the other mozharness
configurations, figuring out which ones are used under what
circumstances is more work than I'm ready to put (I started, but I
stopped when I encountered jobs that don't even run on try or central).
--HG--
extra : rebase_source : dbcbcf9ba80ebb2858c3d47a186daa367afa2988
DAMP doesn't seem to require running Firefox once before running the tests.
DAMP results are about the same with/without warming up the profile.
MozReview-Commit-ID: F9ECgRfxxWY
--HG--
extra : rebase_source : 8c1ce177b12305de3ffa5bebf0e360f880d7a5c7
The return value from Cu.import() does not include lexically scoped
symbols so stop using it here. Also stop using Extension.generate()
while we're here.
MozReview-Commit-ID: HnX3RGgDHbR
--HG--
extra : rebase_source : b4e238f2a5f1c9dce838b4dd70447edd9f401c10
Today's xpcshell harness includes a line for known failures ("Todo:"). This
change makes mozharness aware of that, which avoids test-verify failures when
the test is annotated as failing.
SynthesizeDrop synthesizes a dnd operation by starting a drag session and firing mouse events. Tweak the API to follow the order of real use cases.
MozReview-Commit-ID: 1SdJPUtSVKq
Bug 1382444 added this line to testing/profiles/prefs_general.js:
> user_pref("places.database.lastMaintenance", 7258114800);
(7258114800 seconds after 1970 is the start of the year 2200.)
libpref stores integers prefs as int32_t and the current parser doesn't detect
overflow. So this overflows to -1331819792. (I detected this with the new prefs
parser from bug 1423840, which does detect integer overflow.) As a result the
condition testing this pref in
toolkit/components/places/PlacesCategoriesStarter.js ends up always succeeding
in tests, which is the exact opposite of what was intended.
This patch changes it to 2147483647 (the year 2038), the maximum int32_t value.
MozReview-Commit-ID: LJQmMqQ9hFL
--HG--
extra : rebase_source : 84339c8e721abd47cb3cc85c3923a04417b1bbee
Some tests need to find out js/src to locate their test
data. Exporting this information as part of the environment.
MozReview-Commit-ID: JAefL2arhJL
--HG--
extra : rebase_source : b99d55c4ab4335ea938d8f3a9c733ea74f02fddf
The fact that the queues were not drained on exist seemed to cause an
intermittent failure where one process tried to write to a queue that
another had closed. Draining the queues explicitly should avoid this
and ensure we surface hidden problems in the log.
MozReview-Commit-ID: 8ulLNpIcj5z
--HG--
extra : rebase_source : 1234d368a4ef4eedd4a40835ff2d284bbe04f3f3
At least when the animation-name length is bigger than the animation properties,
we mess up inheritance and only set properly the specified counts, then don't
cycle it.
The nicer fix for this is making these vectors properly, and move the cycling
logic at used-value time (bug 1420928). Same for transitions.
MozReview-Commit-ID: 3cguzIvfMFU
According to :birtles, it is not guaranteed that animationiteration
event will be fired. This event is sample-based rather than event-based,
and such behavior has been clarified in CSS Animations Level 2:
https://drafts.csswg.org/css-animations-2/#event-dispatch
Also, Chromium has the same issue with this test:
https://bugs.chromium.org/p/chromium/issues/detail?id=701445
MozReview-Commit-ID: KBCzkGHxbfc
--HG--
extra : rebase_source : 1d9983ecf8cd9e9297bdb5e76ff26e0c7783d15e
We implement PointerEvent.getCoalescedEvents as
1. Clone the widget events we coalesced.
2. Convert them to dom::PointerEvent when user calls getCoalescedEvents.
MozReview-Commit-ID: 8IKw4PbUsDD
This isn't how the wptserve API works; the return value is supposed to
be the content itself or headers, content or status, headers, content.
MozReview-Commit-ID: 28wZC65crW4
--HG--
extra : rebase_source : ce099ff99ea8e1107880d0af9a061ac24efac198
The behavior covered in this dropped test (canceling an idle animation) is
covered by the tests added in the previous patch. Furthermore, the behavior
expected by the dropped test contradicts what the spec now requires.
MozReview-Commit-ID: 49zik7qjID0
--HG--
extra : rebase_source : 6056c25c19b4bbe8ecaad25f71f7f949470946d9
Note that we don't need tests for the cancel events of CSS Animations or CSS
Transitions since we already have them in
dom/animation/test/css-{animations|transitions}/file_event-dispatch.html
(See the tests named "Call Animation.cancel after cancelling
transition/animation".)
MozReview-Commit-ID: GRtSxEvMkjz
--HG--
extra : rebase_source : a2ed365bb730df409560a28f0091416776435e57
This isn't how the wptserve API works; the return value is supposed to
be the content itself or headers, content or status, headers, content.
MozReview-Commit-ID: 28wZC65crW4
--HG--
extra : rebase_source : dddb4757d753a8a9651f8230d2f14b07774543e0
With the request to shutdown the browser, a given amount of time
has to be waited to allow the process to shutdown itself. Only
if the process is still running afterward it has to be killed.
Firefox has an integrated background monitor which observes
long running threads during shutdown, and kills those after
120s. To allow Firefox to shutdown on its own, geckodriver
has to wait that time, and some additional seconds.
MozReview-Commit-ID: 4LRLQE0jZzw
--HG--
extra : rebase_source : 62422c609131dfe23e547967bcfc5dfb34f30172
This makes several changes to make the 'mach' format cleaner and easier to
read. Some of the changes include:
* No longer print the 'action' no matter what. Printing the action for things
like 'log' or 'process_output' was redundant and caused verbosity. Now this
is done on a case by case basis (things like TEST-START/TEST-END will still
have their actions printed).
* Color coded the process id for 'process_output' actions. This is a dim cyan
to avoid conflicts with other actions.
* No longer quoting 'process_output' messages
* No longer printing thread information. In 99% of the case, this was just
dumping 'MainThread' over and over again. Perhaps printing this could be an
option on the formatter.
* Muted timestamps to help the important parts stand out better
* Colorized suite summary headings
* Unexpected statuses in _format_expected() are always red (never yellow).
This is to help make it stand out from all the other yellow text that gets
printed.
* Internal cleanup/refactoring
MozReview-Commit-ID: LAuYfqYkUPe
--HG--
extra : rebase_source : 6cfea40c2063c4b1e42d9d0e52f5de3aa8cab37b
The suite name is no part of the suite_start message and can be printed via a
mozlog formatter. We shouldn't be printing this directly to stdout from |mach
mochitest|.
MozReview-Commit-ID: TOuqfEF14
--HG--
extra : rebase_source : 15db5dc64476c52c91e59868c3653d5962870a5d
The current "./mach geckodriver" commands runs the geckodriver
binary, but this patch introduces a geckodriver namespace to mach
and renames that command to "./mach geckodriver run".
It also introduces two new commands to build geckodriver and run
its Rust unit tests through "./mach geckodriver build" and "./mach
geckodriver test", respectively.
MozReview-Commit-ID: 5iO9FVkbch2
--HG--
extra : rebase_source : d2fc03aec7de1f0211326215c19f050d4aeace30
When 'summary_on_shutdown' is True (which is the case for |mach test| and
|mach mochitest|, the tbplformatter will now print an overall summary at
the end of the log run.
MozReview-Commit-ID: 9ieqJRcON8e
--HG--
extra : rebase_source : a27f6230c4d2daaa547e6fede24ba0c9ef55bfc0
When 'summary_on_shutdown' is True (which is the case for |mach test| and |mach
mochitest|), BaseSummaryFormatters will save the summary information until the
'shutdown' action is received at the end of the logger's lifetime.
Summary information will no longer be dumped on 'suite_end'.
MozReview-Commit-ID: HKtVr5PxfOy
--HG--
extra : rebase_source : f350f09111deb510b27a4e55797243dda3160869
The mach formatter gathers result counts and unexpected messages during the run
to be dumped in a summary at the end. This is a pattern we'd like to repeat in
several other formatters as well. Rather than re-implementing, this creates a
handler class that does nothing but store the data. Formatters can then choose
how to format this data and when to print it.
MozReview-Commit-ID: HKtVr5PxfOy
--HG--
extra : rebase_source : 22789db1b2fea1e44f47ef1aa9b22b21a6e8649c
We should follow the real use cases to synthesize mouse or touch events to generate pointer events so that the related logic is covered by these test cases.
MozReview-Commit-ID: 9xSgjSL0Azt
We should follow the real use cases to synthesize mouse or touch events to generate pointer events so that the related logic is covered by these test cases.
MozReview-Commit-ID: 9xSgjSL0Azt
In order for |mach test| and |mach mochitest| to log an overall summary,
every test harness invocation they make needs to use the same structured
logger (otherwise the affected suite will be missing from the summary).
MozReview-Commit-ID: 8LJw7r8SItk
--HG--
extra : rebase_source : 1417dce3817bae94ad61a5250065c6cbc35857e4
Suite names are currently only used by formatters to print out
an overall summary from |mach test| and |mach mochitest|. So
this doesn't need to be exact and can be tweaked further at a
later date.
If multiple test invocations have the same suite name, their
results will be merged in the overall summary. If a suite name
is missing, the summary will contain a placeholder name.
MozReview-Commit-ID: K1xpb9hUQRX
--HG--
extra : rebase_source : cc8cc8b36255d939dd5dffd3c5444c34951ac8e2
This is no longer necessary because the formatters now have the ability
to dump failure summaries which include failing tests and subtest results.
This also needs to be removed because it is throwing off the summary counts.
MozReview-Commit-ID: GbQkk0xQRds
--HG--
extra : rebase_source : 7bfbd81e1e7019ab639a98069fd7f0da994bfff7
The current "./mach geckodriver" commands runs the geckodriver
binary, but this patch introduces a geckodriver namespace to mach
and renames that command to "./mach geckodriver run".
It also introduces two new commands to build geckodriver and run
its Rust unit tests through "./mach geckodriver build" and "./mach
geckodriver test", respectively.
MozReview-Commit-ID: 5iO9FVkbch2
--HG--
extra : rebase_source : 6395a65526d48e4af5f63f3b23dd3a52801e03a3
This function makes it possible to listen for multiple events from the
content process, even when there are frameloader swaps.
This commit also adds a checkFn param to firstBrowserLoaded, which is
useful.
MozReview-Commit-ID: 93ItHIPSGVU
The test intentionally uses async_test to avoid browser's awkward micro task
handling.
MozReview-Commit-ID: K5WzEML7D5M
--HG--
extra : rebase_source : 67d35539e4c3654aca4d2016e6d3b5cb3221c02f
In bug 749312, we were given permission to create a source readme
instead of a source tarball. This will save us cycles, disk, and
human configuration time.
We still need to address the missing balrog_props.json for
beetmover-source for that task to turn green.
MozReview-Commit-ID: wnyPoNXCsH
--HG--
extra : rebase_source : 843751523e1fce5743849f43796788dbba5115d3
extra : histedit_source : 2993eb186dc7bd71ad35af48d4393803b0b147dc
When looking up the parent of <html> using an XPath parent expression
such as "..", the nodeType of the returned HTMLDocument will be 9
(DOCUMENT_NODE). <html> is a valid web element and we should be
able to serialise and return it to the user.
It is worth noting that other WebDriver implementations fail this
test because they fail on the nodeType check.
MozReview-Commit-ID: 4FMJEd8B4PZ
--HG--
extra : rebase_source : 24e7cb9da64cde0f133a09781c595b23f919ed59
Some tests need to find out js/src to locate their test
data. Exporting this information as part of the environment.
MozReview-Commit-ID: JAefL2arhJL
--HG--
extra : rebase_source : 2c9e9fa39e41844518ed466a88023cc2b94dec55
This removes the last remenants of frame.Manager and
testing/marionette/frame.js from Marionette. The preceding commits
in this changeset has gradually removed the unused and duplicated
features that it implemented. The only remaining pieces are the
registrating of some chrome-side IPC message handlers which we can
leave attached for the duration of the Marionette session.
MozReview-Commit-ID: EYjrJBeTybz
--HG--
extra : rebase_source : cf8b2d04c05d22eea6fe24061ccb9b21680f0d3c
This removes the Marionette:emitTouchEvent IPC message which is
currently not in use by any tests. Along with removing this message
listener we can get rid of a tonne of complicated infrastructure
in testing/marionette/frame.js.
On switching the content frame we no longer await frame scripts to
register themselves because they implicitly inherit the parent's
frame script in Firefox/Fennec. This was a relic from the B2G days
when each frame was OOP.
MozReview-Commit-ID: 5vxrWHjzd68
--HG--
extra : rebase_source : 544013f42c9ee9eebb119b8d98061d997c7a10f0
It turns out that we no longer need to guard against the browser/frame
closing when using the legacy actions module. This means we can
get rid of GeckoDriver#addFrameCloseListener, which again populates
mozBrowserClose and adds handlers for the related mozbrowserclose event.
The mozbrowsercloseevent was set for every case of Marionette:ok,
Marionette:done, and Marionette:error IPC messages. These events
are still in use in testing/marionette/proxy.js, but with this
patch we stop listening for these events in testing/marionette/driver.js.
MozReview-Commit-ID: jp34kh7nqD
--HG--
extra : rebase_source : b9551972717c9c399806b7c7e1e2a1adc99593c5
The IPC message "aliveCheck" will always fail because there is no such
message handler in Marionette and because it swallows all thrown errors.
MozReview-Commit-ID: JISuK65ZcGM
--HG--
extra : rebase_source : e4ccbb96727a67ce11f31463a08f66768bd23589
The MarionetteFrame:getCurrentFrameId IPC message was used for B2G
applications that needed access to chrome-scoped APIs for emitting
touch events. Now that actions happen either in chrome _or_ in
content this is no longer necessary functionality to maintain.
MozReview-Commit-ID: Bk9LRAOxjAw
--HG--
extra : rebase_source : 71dac090db681a24dc5ebb54fdf1cf02a97563b0
MarionetteFrame:getInterruptedState was used in B2G to abortence
if the OOP frame got interrupted by a modal dialogue. Like the
MarionetteFrame:handleModal IPC message, the frame script needed
chrome assistance for querying the presence of this dialogue.
Today modal dialogues (known as "user prompts") are handled entirely
in chrome space, and the presence of such a dialogue is indeed
meant to pause script execution in the web document.
This patch makes some rather questionable changes to the legacyaction
module, but this is alright because we don't expect any more tests to
be written using it. This patch just about makes sure the remaining
body of tests keeps passing.
MozReview-Commit-ID: 72g0GlYy21T
--HG--
extra : rebase_source : f44ed5999554a42c67827d6935bd96cc79a8e5dd
The MarionetteFrame:handleModal IPC message is not used in listener.js,
and it is no longer a requirement that this is done through a call
from the content frame script.
MozReview-Commit-ID: Bn40b1VT7Da
--HG--
extra : rebase_source : 9def3f7faa5f860622259bd85982e1072b436be0
The Marionette:shareData IPC message was used by the simpletest
harness to share test logs with the main process. This is no longer
a requirement.
MozReview-Commit-ID: 4nn7FefCdJ8
--HG--
extra : rebase_source : 44d8334c4a116d7056ee7a938fdf900e350d73f2
We used to transport log messages to the main process for logging.
This is no longer required and the IPC message has not been in use
for some time.
MozReview-Commit-ID: F5thqDOJADd
--HG--
extra : rebase_source : b1ba930cc870655398f7024213c77cb6b93113c9
In B2G, when a frame was interrupted by a modal dialogue, the
Marionette:switchToModalOrigin IPC message allowed you to switch
back to the frame that was interrupted. It got called by the
interrupted frame once the dialogue got dismissed and the frame
resumed its process. This functionality is no longer requried.
MozReview-Commit-ID: DtCOzeW45qP
--HG--
extra : rebase_source : 46ed3841abc53e0369246625d16839e9b2576d39
Also remove related code that was only used from here including
stuff related to marketplace purchases, etc.
MozReview-Commit-ID: ESX78tVQK7M
--HG--
extra : rebase_source : 56d956168f75cdc40fd3df057e41493f80733352
We implement PointerEvent.getCoalescedEvents as
1. Clone the widget events we coalesced.
2. Convert them to dom::PointerEvent when user calls getCoalescedEvents.
MozReview-Commit-ID: 8IKw4PbUsDD
These magic locations evolve over time. Baking them into
moz.configure is the easiest way to share them across the build
system, and pushing them into a new |mach android *| command continues
a pattern that has been very successful.
MozReview-Commit-ID: CyxVQ0LHHgl
--HG--
extra : rebase_source : 8350d71665f0126aa4ee2c8fec32c4b8e34dc772
We've had good success with |mach android *| for invoking test suites
and other Gradle-related features; this was just an oversight. The
real advantage is that almost all of the magic Gradle targets are now
in mobile/android/mach_commands.py and not scattered throughout the
tree. That'll make it easier to move the actual Gradle configuration
choices forward in the future.
MozReview-Commit-ID: GI1pUHHfXeO
--HG--
extra : rebase_source : 9d7b98e968a2537f8dd1ffd0646c51ffe429bd57
These magic locations evolve over time. Baking them into
moz.configure is the easiest way to share them across the build
system, and pushing them into a new |mach android *| command continues
a pattern that has been very successful.
MozReview-Commit-ID: CyxVQ0LHHgl
--HG--
extra : rebase_source : 8350d71665f0126aa4ee2c8fec32c4b8e34dc772
We've had good success with |mach android *| for invoking test suites
and other Gradle-related features; this was just an oversight. The
real advantage is that almost all of the magic Gradle targets are now
in mobile/android/mach_commands.py and not scattered throughout the
tree. That'll make it easier to move the actual Gradle configuration
choices forward in the future.
MozReview-Commit-ID: GI1pUHHfXeO
--HG--
extra : rebase_source : 9d7b98e968a2537f8dd1ffd0646c51ffe429bd57
It looks like the main cause of intermittent failures in getDirectory is
that the adb pull command fails because the emulator has hung. For other
commands, we usually handle this by checking the return code and raising
DMError if anything fails. There is mozharness/taskcluster code in
place to automatically retry tasks that throw DMError.
This function makes it possible to listen for multiple events from the
content process, even when there are frameloader swaps.
This commit also adds a checkFn param to firstBrowserLoaded, which is
useful.
MozReview-Commit-ID: 93ItHIPSGVU
The remote-active system notification is currently sent before the
TCP socket has stopped listening. It is marginally safer to send
it as the last action.
MozReview-Commit-ID: KhB6TMvyCPv
This function makes it possible to listen for multiple events from the
content process, even when there are frameloader swaps.
This commit also adds a checkFn param to firstBrowserLoaded, which is
useful.
MozReview-Commit-ID: 93ItHIPSGVU
It looks like the main cause of intermittent failures in getDirectory is
that the adb pull command fails because the emulator has hung. For other
commands, we usually handle this by checking the return code and raising
DMError if anything fails. There is mozharness/taskcluster code in
place to automatically retry tasks that throw DMError.
Marionette has a Marionette:sleepSession IPC command it uses to put a
content frame script "to sleep". This removes certain message handlers
and clears some state by calling deleteSession() in listener.js.
The frame script can later be "restarted" by calling Marionette:restart.
This is B2G-specific functionality we no longer need. In an effort
to remove old cruft from Marionette before tackling the window
tracking refactoring we want to remove support for this.
This removes the Marionette:sleepSession and Marionette:restart
IPC messages as well as GeckoDriver#switchToGlobalMessageManager.
The latter function additionally resets GeckoDriver#mm to the global
message manager which is fine, because for Firefox/Fennec we never
use the targetted message manager.
There will be a follow-up bug to remove OOP frame handling and the
targetted message manager used in GeckoDriver#sendAsync.
MozReview-Commit-ID: GRSBReBfQGX
--HG--
extra : rebase_source : 9f5ff562e3547ee804ec350678cb688f2cf1b4fa
When Marionette starts and shuts down it emits the remote-active
system notification. On starting the data is set to true (a boolean),
but on shutdown it is left undefined which defaults to null.
We should use false (boolean) explicitly.
MozReview-Commit-ID: Er0Wn2pZrOi
--HG--
extra : rebase_source : 35d1f7ab471309a25d660c056deb6f69821e40c2
The remote-active system notification is currently sent before the
TCP socket has stopped listening. It is marginally safer to send
it as the last action.
MozReview-Commit-ID: KhB6TMvyCPv
--HG--
extra : rebase_source : 5363c00a8da9217d2f93908c52a466d47fb21d75
Since the crash reporter interface was made available all the time,
the check for the enabled state of the crash reporter had to be made
via AppConstants.jsm
MozReview-Commit-ID: LPkBVEjBB5o
--HG--
extra : rebase_source : eb49d7ca7c457ae1afaafdd9e6364333aebd03bf