Commit Graph

213 Commits

Author SHA1 Message Date
Johann Hofmann
45612e42a9 Bug 1567824 - Add browser.contentblocking.introCount back to marionette.js and geckoinstance.py. r=whimboo
Differential Revision: https://phabricator.services.mozilla.com/D38841

--HG--
extra : moz-landing-system : lando
2019-07-22 07:57:25 +00:00
Johann Hofmann
a23cc83a46 Bug 1564367 - Remove the content blocking UI tour. r=MattN,fluent-reviewers,flod
Differential Revision: https://phabricator.services.mozilla.com/D37384

--HG--
extra : moz-landing-system : lando
2019-07-11 10:29:17 +00:00
Victor Porof
2b036e45c5 Bug 1561435 - Format testing/, a=automatic-formatting
# ignore-this-changeset

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

--HG--
extra : source : c0948f31e520ca087279cf429ca5f1db5a8341b8
2019-07-05 11:01:24 +02:00
Henrik Skupin
7f2ed6b0fb Bug 1558763 - [marionette] Disable "browser.tabs.remote.separatePrivilegedContentProcess" by default. r=maja_zf
Due to bug 1557457 it can happen that loading a web page with eg.
a HTTP auth prompt, no modal dialog will be shown by Firefox. As
such disable this preference for now globally, until all the issues
with privileged content processes have been solved.

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

--HG--
extra : moz-landing-system : lando
2019-06-12 13:45:32 +00:00
Henrik Skupin
d8233768db Bug 1553748 - [marionette] Firefox should not unload tabs when available memory is running low. r=webdriver-reviewers,automatedtester
Differential Revision: https://phabricator.services.mozilla.com/D34145

--HG--
extra : moz-landing-system : lando
2019-06-07 13:33:25 +00:00
David Burns
c7072d92cf Bug 1542244: Disable Privacy and tracking protection features during testing. r=webdriver-reviewers,ato,whimboo
When privacy and tracking protection is enabled there is a call home that
can break tests. This uses the relavant prefs to disable the features.

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

--HG--
extra : moz-landing-system : lando
2019-06-05 08:11:38 +00:00
Henrik Skupin
5b21bc7297 Bug 1530979 - [marionette] Initialize Marionette when receiving the marionette-startup-requested notification. r=florian,automatedtester
Differential Revision: https://phabricator.services.mozilla.com/D23489

--HG--
extra : moz-landing-system : lando
2019-03-15 12:51:11 +00:00
Johann Hofmann
7175d71e03 Bug 1529643 - Don't do MitM priming in tests. r=whimboo,gbrown
Differential Revision: https://phabricator.services.mozilla.com/D22407

--HG--
extra : moz-landing-system : lando
2019-03-13 23:37:01 +00:00
Gurzau Raul
c747f02899 Backed out 2 changesets (bug 1529643) for eslint failure at NetErrorChild.jsm on a CLOSED TREE.
Backed out changeset 000dfd4caca0 (bug 1529643)
Backed out changeset e4718a35d70b (bug 1529643)
2019-03-14 01:09:43 +02:00
Johann Hofmann
5f4d44a59c Bug 1529643 - Don't do MitM priming in tests. r=whimboo,gbrown
Differential Revision: https://phabricator.services.mozilla.com/D22407

--HG--
extra : moz-landing-system : lando
2019-03-13 21:04:04 +00:00
Geoff Lankow
08324b7d0f Bug 1530980 - Stop listening for mail-startup-done to start Marionette in Thunderbird; r=whimboo 2019-03-09 15:44:14 +13:00
Nick Alexander
2b09060ef2 Bug 1496773 - Part 2: Route Marionette startup via new "marionette-startup-requested" notification. r=ato
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
2019-02-04 18:15:32 +00:00
Kris Maglione
e930b89c34 Bug 1514594: Part 3 - Change ChromeUtils.import API.
***
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
2019-01-17 10:18:31 -08:00
Henrik Skupin
fb49499bf5 Bug 1508726 - [geckodriver] Use "app.update.disabledForTesting" to disable application updates. r=ato
Until Firefox 64 the preference "app.update.auto" controlled if updates
can be downloaded and applied. This changed in Firefox 65, and now the
preference "app.update.disabledForTesting" controls it.

Depends on D13515

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

--HG--
extra : moz-landing-system : lando
2018-12-05 08:12:46 +00:00
Cosmin Sabou
631d5b3bc1 Backed out 2 changesets (bug 1508726) as requested by whimboo for TestMarionette.test_application_update_disabled permafails.
Backed out changeset 5c59407599f6 (bug 1508726)
Backed out changeset 766ba8a6c875 (bug 1508726)
2018-12-05 09:49:46 +02:00
Henrik Skupin
ec2e5d087c Bug 1508726 - [geckodriver] Use "app.update.disabledForTesting" to disable application updates. r=ato
Until Firefox 64 the preference "app.update.auto" controlled if updates
can be downloaded and applied. This changed in Firefox 65, and now the
preference "app.update.disabledForTesting" controls it.

Depends on D13515

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

--HG--
extra : moz-landing-system : lando
2018-12-03 15:05:36 +00:00
Henrik Skupin
bd8c60832d Bug 1510584 - [marionette] Have a better granularity between DEBUG and TRACE logging output. r=ato
The debug output is currently kinda polluted with lines of
received events and observer notifications. Those are not usually
needed by anyone beside us, but they also add little value in
having additional trace output, because that mainly would only
add the command and response messages.

To make debug output more helpful for our users the command
and response messages should appear here and not in trace.

But all the additional log output lines as mentioned above
we usually make use of for investigating problems should
be trace only.

Also a lot of existing debug output will remain unchanged.

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

--HG--
extra : moz-landing-system : lando
2018-11-29 19:31:38 +00:00
Henrik Skupin
ab56f42848 Bug 1509256 - Fix application update preferences for backward compatibility in Marionette and geckodriver. r=ato,bytesized
Because in Marionette the application updates cannot be turned off
via the preference "app.update.disabledForTesting" (see bug 1508726),
the preference "app.update.auto" has to be used for the time being
to control that by default no updates should be downloaded and
installed.

Even "app.update.disabledForTesting" doesn't work right now,
it might be good to leave it. It would help us in the future
so that we won't have to release new Marionette client and
geckodriver releases, if it gets supported in Firefox.

Note that this band-aid fix will only work for Firefox releases
from 57 to 64. For Firefox 65 and onwards the fix on
bug 1508726 will be needed.

Depends on D13059

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

--HG--
extra : moz-landing-system : lando
2018-11-28 22:10:40 +00:00
Henrik Skupin
271aa30b73 Bug 1509256 - Clarify where to add preferences for geckodriver and Marionette. r=ato
It should be made clear that only those preferences should be added
to marionette.js which have an immediate effect. All others which
eg. require a restart, or have to be set before the application
starts the first time, must be added to the appropriate client's
profile generation code.

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

--HG--
extra : moz-landing-system : lando
2018-11-27 20:12:04 +00:00
Geoff Lankow
fe3e835c8c Bug 1506523 - Adapt Marionette so it can run on Thunderbird; r=whimboo
--HG--
extra : rebase_source : 65b6677dfe8672b4972f65dcf50228a826a4ba9e
2018-11-23 10:38:19 +13:00
Robert Strong
ce780910f7 Bug 1506917 - Don't attempt to check for updates from Firefox's nsBrowserGlue.js when running tests. r=ted
This adds the app.update.checkInstallTime pref with a value of false in all tests that have the app.update.disabledForTesting pref except for geckodriver which is covered by bug 1508283.
2018-11-19 07:33:33 -08:00
Henrik Skupin
0a13b40b29 Bug 1506643 - [marionette] Disable "about:newtab" page, and always load "about:blank". r=ato
Differential Revision: https://phabricator.services.mozilla.com/D11691

--HG--
extra : moz-landing-system : lando
2018-11-12 19:59:45 +00:00
Kirk Steuber
59411d310b Bug 1458308 - Remove app.update.auto and app.update.enabled from prefs.rs and marionette.js r=rstrong,ato
`app.update.auto` should actually never have been needed here. `app.update.disabledForTesting`, and before that, `app.update.enabled` will prevent updates altogether. Now that the `app.update.auto` pref is not the correct mechanism for disabling automatic update, this pref should be removed from these files.

`app.update.enabled` can also be removed from prefs.rs at this time as per the comment in the file indicating that it can be removed when Firefox 62 stabilizes.

Depends on D10315

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

--HG--
extra : moz-landing-system : lando
2018-11-06 21:16:19 +00:00
Henrik Skupin
36e60c6f0a Bug 1488826 - [marionette] Disable content blocking introduction panel. r=ato
Differential Revision: https://phabricator.services.mozilla.com/D11007

--HG--
extra : moz-landing-system : lando
2018-11-06 13:35:33 +00:00
Kris Maglione
3a5c05e76f Bug 1484496: Part 5e - Convert remaining nsISimpleEnumerator users to use JS iteration. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D3733

--HG--
extra : rebase_source : c0fac176d7b3d840c4dbb14f8d95ccfc7f83a5a8
extra : histedit_source : a92c40117d0808a3ad68c972f622a7a42c9ae8ba
2018-08-18 18:13:14 -07:00
Gijs Kruitbosch
dcbec7c8b6 Bug 1478404 - remove _xpcom_categories annotations as they're dead code, r=florian
Support for the _xpcom_categories property was removed in Bug 568691,
but we left a bunch of consumers behind, and it's been cargo-culted a bit more.
We should remove the remaining remnants.

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

--HG--
extra : moz-landing-system : lando
2018-07-31 17:39:25 +00:00
Kirk Steuber
da107c225e Bug 1420514 - Replace app.update.enabled with app.update.disabledForTesting in the test harness r=ato,chutten,jmaher,lina
MozReview-Commit-ID: GCGKQ5QCC7o

--HG--
extra : rebase_source : ba135c7d285987fd030fef4e18a5aa701a43cdba
extra : intermediate-source : e6c89a0ff0c7a7e7cd1c028e49660bab0416a531
extra : source : 646080a591c0d2365d6e8f4a493607fa3fff86c9
2018-05-22 09:14:19 -07:00
Andreea Pavel
1e8d2e6f7d Backed out 7 changesets (bug 1420514) for breaking bc on different files on a CLOSED TREE
Backed out changeset 5a46a221b6e8 (bug 1420514)
Backed out changeset 48ed6dfe8772 (bug 1420514)
Backed out changeset 01bf643c77e5 (bug 1420514)
Backed out changeset 5791b17ccb82 (bug 1420514)
Backed out changeset 416e398d942f (bug 1420514)
Backed out changeset de4a4592dbd9 (bug 1420514)
Backed out changeset d3399edf0197 (bug 1420514)
2018-07-12 21:22:32 +03:00
Kirk Steuber
35d8c30dbb Bug 1420514 - Replace app.update.enabled with app.update.disabledForTesting in the test harness r=ato,chutten,jmaher,lina
MozReview-Commit-ID: GCGKQ5QCC7o

--HG--
extra : rebase_source : e38cf587711192c3020cd9ac6a39cdbd97d2600b
extra : source : 646080a591c0d2365d6e8f4a493607fa3fff86c9
2018-05-22 09:14:19 -07:00
Henrik Skupin
7d4714d66c Bug 1472136 - Detect XML parsing errors during Marionette startup. r=ato
The patch lets Marionette detect a XML parser error window
during startup, which usually leaves the browser in an
unusable state. Marionette client then times out after
120s with a generic and not helpful error message.

In case such a window opens Marionette logs a fatal message
to the console, which then can be picked-up by Treeherder
for the failure summary.

MozReview-Commit-ID: L3zW3TcaJhE

--HG--
extra : rebase_source : 59a3149a4d09224d03133c9955a522b3c3d6333d
2018-06-29 13:14:32 +02:00
Gijs Kruitbosch
006aa20e16 Bug 1438499 - show 'close multiple tabs' warning dialog when quitting, r=jaws,whimboo
MozReview-Commit-ID: J2gi9do8HK9

--HG--
extra : rebase_source : b22103b5a4d43fc6da535ef00f75ed6bc80d92fb
2018-06-13 09:34:52 -07:00
Doug Thayer
10ff9c706f Bug 1448040 - Remove HangMonitor/ChromeHangs r=Nika
Fairly straightforward, just a blanket removal. Haven't heard
anything on dev-platform or fx-data-dev regarding this removal,
so I think it's likely safe to remove on Nightly, and we can
revert if anyone makes a fuss.

As part of removing the HangMonitor, I renamed a few things and
reorganized the namespaces to not depend on a HangMonitor
namespace. Hopefully this doesn't produce too much noise in the
diff, it just seemed appropriate to move everything around
rather than keep dangling vestiges of the old system.

MozReview-Commit-ID: 8C8NFnOP5GU

--HG--
extra : rebase_source : dd000a05bfc2da40c586644d33ca4508fa5330f6
2018-04-29 18:21:20 -07:00
Andreas Tolfsen
26dbe00a1e Bug 1464469 - Avoid ad-hoc Marionette logging setup. r=whimboo
By using the new log access functions we can avoid ad-hoc log setup
in the Marionette component.  This encapsulates the workarounds for
dealing with lack of E10s support in Log.jsm to testing/marionette/log.js.

Because the Marionette component is loaded at any time, we need to
keep the lazy getter for accessing the logger.

MozReview-Commit-ID: EabQ0zXSsGK

--HG--
extra : rebase_source : 1a891efcb10f304e85014c208e9d6955aa17399c
2018-06-06 14:38:36 +01:00
Andreas Tolfsen
6a246179dc Bug 1468025 - Define lazy getter for TCPListener in Marionette component. r=whimboo
This patch reorganises imports and getter definitions to match
style used elsewhere, and defines TCPListener as a lazy getter.

MozReview-Commit-ID: Dq2ufYzVcvE

--HG--
extra : rebase_source : 5b2510688a8fa0bcefa9bf0e760e92b0c1c982ce
2018-06-09 18:51:13 +01:00
Andreas Tolfsen
b66176925a Bug 1468022 - Avoid quitting Firefox when enabled via pref at runtime. r=whimboo
If for whatever reason Marionette fails to initialise we quit
Firefox so that the parent process of Firefox (typically geckodriver)
does not have to elapse its connection timeout.

This patch rectifies an oversight that we also have this behaviour
when the user flips the marionette.enabled preference.  If the user
is in control of the process we should not forcefully make Firefox quit.

MozReview-Commit-ID: LVqAeIp56MG

--HG--
extra : rebase_source : aea517efa4e2dfcdd0c82a74d8c3c9c8686fe0e8
2018-06-09 18:41:01 +01:00
Andreas Tolfsen
13565e21f4 Bug 1468026 - Rename MarionetteMainProcess to MarionetteParentProcess. r=whimboo
The "parent process" terminology is already established in the
parent process message manager.  This aligns the Marionette component
with this terminology.

MozReview-Commit-ID: 12z1M5jAWDa

--HG--
extra : rebase_source : e735dd5a15c39703cad9799dd7578fed5fb1f139
2018-06-09 18:57:03 +01:00
Cosmin Sabou
0f45148664 Backed out changeset 531593bacc4e (bug 1448040) for Android build bustages on HangAnnotations.h. CLOSED TREE
--HG--
extra : rebase_source : ea3618023c548a8ca6ca14749633c194606af52f
2018-06-07 19:22:31 +03:00
Doug Thayer
87bf13e093 Bug 1448040 - Remove HangMonitor/ChromeHangs r=Nika
Fairly straightforward, just a blanket removal. Haven't heard
anything on dev-platform or fx-data-dev regarding this removal,
so I think it's likely safe to remove on Nightly, and we can
revert if anyone makes a fuss.

As part of removing the HangMonitor, I renamed a few things and
reorganized the namespaces to not depend on a HangMonitor
namespace. Hopefully this doesn't produce too much noise in the
diff, it just seemed appropriate to move everything around
rather than keep dangling vestiges of the old system.

MozReview-Commit-ID: 8C8NFnOP5GU

--HG--
extra : rebase_source : 59e4a6ced7d14d2a01c0b79e944078ea84cae523
2018-04-29 18:21:20 -07:00
Andreas Tolfsen
62e21cf103 Bug 1467215 - Reset prefs possibly set by failed init. r=maja_zf
If initialisation fails on being unable to start the TCP listener,
we may have already set some recommended preferences.  This patch
ensures any altered preferences get reset when uninit() is called
in the try...catch block in init().

MozReview-Commit-ID: B5vNvTUZcO7

--HG--
extra : rebase_source : 1cab7dfdf9c60d0f294df7a0bd0356041319d161
2018-06-06 18:34:32 +01:00
Andreas Tolfsen
df7df2196d Bug 1467215 - Abort initialisation on fatal error. r=maja_zf
When the Marionette component fails to initialise we fail to bail
out.  This causes Marionette to report itself as enabled through
an environment variable, an observer notification, and a log message.

MozReview-Commit-ID: 2nTNNP0o5dv

--HG--
extra : rebase_source : 3b780bf2f24e03ba796d50cf5094c28d951847ec
2018-06-06 18:31:28 +01:00
Henrik Skupin
b49b5af33b Bug 1466658 - [geckodriver] Overhaul of user preferences in prefs.rs. r=ato
Lots of preferences aren't used anymore, or are safe to set at
startup in marionette.js. This also makes them specific to a
version of Firefox, and prevents us from keeping fallback
preferences around in geckodriver.

This patch bumps the recommended version of Firefox to 57.

MozReview-Commit-ID: Iic6iWFP3Nx

--HG--
extra : rebase_source : 0700aa502f53178f759ded232fe4a1452b07e1ee
2018-06-05 11:37:27 +02:00
Dorel Luca
d54a3b06aa Backed out changeset da12c077747f (bug 1448040) for Android build bustage on build/src/obj-firefox/dist/include/mozilla/HangAnnotations.h. CLOSED TREE
--HG--
extra : amend_source : 683201b5a47af3cb7fdcb7426c65f1c9ed713186
2018-05-25 20:13:26 +03:00
Doug Thayer
9765bdd0e0 Bug 1448040 - Remove HangMonitor/ChromeHangs r=Nika
Fairly straightforward, just a blanket removal. Haven't heard
anything on dev-platform or fx-data-dev regarding this removal,
so I think it's likely safe to remove on Nightly, and we can
revert if anyone makes a fuss.

As part of removing the HangMonitor, I renamed a few things and
reorganized the namespaces to not depend on a HangMonitor
namespace. Hopefully this doesn't produce too much noise in the
diff, it just seemed appropriate to move everything around
rather than keep dangling vestiges of the old system.

MozReview-Commit-ID: 8C8NFnOP5GU

--HG--
extra : rebase_source : a8840bd26f4b01b756ffa72345ababb625048550
2018-04-29 18:21:20 -07:00
Henrik Skupin
75096ef8ff Bug 1460651 - [marionette] Getter for "running" has to always return a boolean. r=ato
MozReview-Commit-ID: 5mOJSgwVQN1

--HG--
extra : rebase_source : e33760eacc88def1fb2a631ee63426eb206d185e
2018-05-14 20:51:56 +02:00
Henrik Skupin
6b8e21179a Bug 1460651 - [marionette] Add additional debug logging for browser startup. r=ato
MozReview-Commit-ID: 9ABM2XcJoKc

--HG--
extra : rebase_source : 1c230e2f6723658b73f46b81bad500a8daadf02a
2018-05-10 18:20:17 +02:00
Andreas Tolfsen
c65aa9b433 Bug 1460656 - Fix sync IPC message Marionette:GetLogLevel by using initialProcessData. r=maja_zf
As a workaround for bug 1411513, about Log.jsm not supporting E10s,
testing/marionette/listener.js makes a synchronous call (sendSyncMessage)
to the main process asking for the Marionette logger repository's level.

We can avoid this blocking operation by using initialProcessData,
which is new since the workaround was implemented.

initialProcessData is a dictionary structured clone serialisable
that gets copied to the content process when it starts.  Because the
Marionette log level cannot be changed at runtime it should be fine
to only send this data once per child process.

MozReview-Commit-ID: 3czydqGZpZH

--HG--
extra : rebase_source : 1aaae676d2b56c609844238e8173b64d300e3e00
2018-05-10 17:32:42 +01:00
Henrik Skupin
9fde0f005d Bug 1434872 - [marionette] Firefox has to automatically dismiss "beforeunload" prompts. r=ato
As requested by the WebDriver specification any beforeunload prompt
has to be automatically dismissed for the close and navigate commands.

MozReview-Commit-ID: 1qp0nzIYTaM

--HG--
extra : rebase_source : 418dca8e9fa61df6d5423c8c5cce6a97a0001821
2018-04-19 14:47:32 +02:00
Kris Maglione
a259026c9d Bug 1456035: Part 4 - Convert callers of XPCOMUtils.generateQI to ChromeUtils.generateQI. r=mccr8
This also removes any redundant Ci.nsISupports elements in the interface
lists.

This was done using the following script:

acecb401b7/processors/chromeutils-generateQI.jsm

MozReview-Commit-ID: AIx10P8GpZY

--HG--
extra : rebase_source : a29c07530586dc18ba040f19215475ac20fcfb3b
2018-04-22 20:55:06 -07:00
Andrew Swan
7b20ac46dc Bug 1433574 Remove startup addon update check r=kmag
MozReview-Commit-ID: AjcRaDqjDNy

--HG--
extra : rebase_source : 6c70243496248b617d3bf5d7244388d0c30004f8
2018-04-23 14:59:11 -07:00
Andreas Tolfsen
f8effc614b Bug 1456051 - Make server an ES module. r=maja_zf
MozReview-Commit-ID: Cc8LEdVtmVg

--HG--
extra : rebase_source : 41898d5f0ea2745be08eb910d71f3b1abcec17db
2018-04-23 10:19:52 +01:00