Having to add pagehide/pageshow listeners to the chrome event target is a
serious inconvience for the use cases of this bug. Dispatching to system group
listeners has approximately the same effect as the old code, but is much
easier for window-bound code to handle.
--HG--
extra : rebase_source : d67c14e9ba91772d8a9dd82481120b34bdb551e0
This patch changes the failure condition of all mochitest tests to take the number of failures (given by self.countfail). It also adds a condition to check if there are passing and todo counts, and if there are not, the test chunk fails. With this change, mochitest test chunks will fail if the failure count is not 0, or all the counts (pass, todo, and fail) are 0. This fixes a case where the TODO tests were considered as failures when no passing tests were run along side them.
Differential Revision: https://phabricator.services.mozilla.com/D3612
--HG--
extra : moz-landing-system : lando
This patch changes the failure condition of all mochitest tests to only take the number of failures (given by self.countfail) into account. With this change, mochitest test chunks will only fail if the failure count is not 0. This fixes a case where the TODO tests were considered as failures when no passing tests were run along side them.
Differential Revision: https://phabricator.services.mozilla.com/D3340
--HG--
extra : moz-landing-system : lando
Catch the exception if adb pull fails on code coverage file, to avoid task retry.
Differential Revision: https://phabricator.services.mozilla.com/D3503
--HG--
extra : moz-landing-system : lando
This patch adopts Logger#managerLevelFromPref from Log.jsm to set
and keep track of the Marionette logger's verbosity.
This has the advantage that we do not have to roll separate
implementations of Log for the child- and parent processes. It also
has the upside that the log level will be reflected when changed
at runtime through the use of an observer.
With the new loading model for frame scripts, lexical variables defined in a
global frame script are not available to other frame scripts.
Additionally, scripts loaded into a context object by the subscript loader
should not depend on being able to access properties of the message manager as
if they were globals.
MozReview-Commit-ID: 6QEyA1sBVOV
--HG--
extra : rebase_source : d3a7820104645dc356bdf8ea660b970e1f6c20e7
Loading SpecialPowers into frame scripts has side-effects, detailed in part 1,
which are undesirable. The main side-effect that I'm trying to get rid of here
is the force-enabling of permissive COWs in frame script scopes, which is
blocking changes that I need to make elsewhere. But both that and the scope
pollution it causes are likely to allow code to work when running in
automation which fails in real world usage.
This patch changes our special powers frame scripts to load specialpowers.js
and specialpowersAPI.js as JSMs, which run in their own global, but define
most of the same properties on our frame script globals.
Most other callers still load those scripts via <script> tags or the subscript
loader, and should ideally migrated in a follow-up. But even so, this patch
still gives us a cleaner separation of the frame script and non-frame-script
loading code.
MozReview-Commit-ID: CR226gCDaGY
--HG--
extra : rebase_source : 251574d238ded31b9df32dc89852251831d55757
extra : source : c53c7b0249ad3359fbc9f144f2cf9ca3b6386c59
Loading SpecialPowers into frame scripts has side-effects, detailed in part 1,
which are undesirable. The main side-effect that I'm trying to get rid of here
is the force-enabling of permissive COWs in frame script scopes, which is
blocking changes that I need to make elsewhere. But both that and the scope
pollution it causes are likely to allow code to work when running in
automation which fails in real world usage.
This patch changes our special powers frame scripts to load specialpowers.js
and specialpowersAPI.js as JSMs, which run in their own global, but define
most of the same properties on our frame script globals.
Most other callers still load those scripts via <script> tags or the subscript
loader, and should ideally migrated in a follow-up. But even so, this patch
still gives us a cleaner separation of the frame script and non-frame-script
loading code.
MozReview-Commit-ID: CR226gCDaGY
--HG--
extra : rebase_source : fa253abde2029ec09c724404106d83623f064875
This patch makes a new baseline coverage test for browser-chrome which makes use of the BrowserTestUtils functions. It also begins the necessary changes so that the baseline test addition uses suites instead of file types.
MozReview-Commit-ID: 7nucHnF8CIn
--HG--
extra : rebase_source : a2a8f61bbbc5025544bebd74cee2a06d46f23fe2
This is another quick-and-dirty port. Some of the test logic could
probably be moved to unprivileged extension code but there's no urgent
reason to do that right now.
MozReview-Commit-ID: Af0XQbakLsx
--HG--
rename : testing/mochitest/bootstrap.js => testing/mochitest/api.js
extra : rebase_source : 3870a63d96c0b2d73ccc468393c75e17b884383f
extra : source : 604167986098726b86ea0f9252a63abab36d35c4
beforeTestSync uses an asynchronous operation that takes a while to finish.
In the meantime, it's very likely that the browser will run some tasks
scheduled to run when idle, which cause XPCOMUtils mock in browser-test.js
to be used, which references _globalProperties.
--HG--
extra : rebase_source : 3d75068a43cad4e87317792c67b6fe5fd483f0c5
Before this change, we accessed the browser URL in the following ways:
- "chrome://browser/content/browser.xul"
- "chrome://browser/content/" (which redirects to chrome://browser/content/browser.xul)
- Services.prefs.getCharPref("browser.chromeURL") which returns "chrome://browser/content/"
- getBrowserURL() from utilityOverlay.js
MozReview-Commit-ID: I5vtRke1x9t
--HG--
extra : rebase_source : c525350a1954740873e85b045cbb14a8b43aa89d
This patch adds new functions taking the arena parameter rather than overloading
existing functions, because there are already overloads of calloc that take
two size_t parameters (which arena_id_t is an alias for), so it couldn't have
been done that way, and malloc and realloc needed to be consistent with calloc.
MozReview-Commit-ID: 1MUXoCUgJWO
--HG--
extra : rebase_source : 16261ba4e802efa0bc65878d490ae9b62aa35797