Commit Graph

437 Commits

Author SHA1 Message Date
Henrik Skupin
6050750472 Bug 1590102 - [remote] Implement Network.deleteCookies. r=remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D59431

--HG--
extra : moz-landing-system : lando
2020-01-13 16:02:09 +00:00
Andreas Tolfsen
4e8d36ea9b bug 1606828: remote: add -v[v] flag to "./mach puppeteer-test" r=remote-protocol-reviewers,whimboo
This introduces a -v[v] flag to the "./mach puppeteer-test" command
for increasing the logging verbosity of the remote agent in Gecko.
This can be used as a shorthand for --setpref="remote.log.level=<level>".

A single -v will enable log messages up to debug level, and two
-vv will enable all log messages up to trace level.

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

--HG--
extra : moz-landing-system : lando
2020-01-13 11:39:33 +00:00
Khushal Sahni
d7f74c0866 Bug 1604143 - Make browser-chrome task function arguments an object. r=whimboo,remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D59082

--HG--
extra : moz-landing-system : lando
2020-01-13 08:52:44 +00:00
Andreas Tolfsen
b1d2305ed8 bug 1603078: remote: add --enable-fission to "./mach puppeteer-test" r=remote-protocol-reviewers,whimboo
The "./mach puppeteer-test" command now takes a new flag,
--enable-fission, which will set the fission.autostart preference to true.

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

--HG--
extra : moz-landing-system : lando
2020-01-06 09:55:01 +00:00
Andreas Tolfsen
cfb4f745d1 bug 1603078: remote: fix passing extra prefs to Puppeteer r=remote-protocol-reviewers,maja_zf
Puppeteer accepts an environmental variable EXTRA_LAUNCH_OPTIONS
that is a JSON encoded object as a string, containing additional
configuration to use when running tests.

This takes an extraPrefsFirefox key which is an object
mapping preference names to values.  This is extracted in
remote/test/puppeteer/lib/Launcher.js:390 and later written to a
fresh profile in :515.

It appears remote/mach_commands.py has left out the "Firefox" appendix.

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

--HG--
extra : moz-landing-system : lando
2020-01-10 14:56:21 +00:00
Henrik Skupin
210002ad71 Bug 1596136 - [remote] "Emulation.setUserAgentOverride" should only affect the current target. r=remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D58164

--HG--
extra : moz-landing-system : lando
2020-01-08 14:04:55 +00:00
Henrik Skupin
2248eb2510 Bug 1596136 - [remote] Remove openTab() and openWindow() helpers from target tests head.js. r=remote-protocol-reviewers,ato
Bug 1605722 already added those helpers to the global head.js file.
As such they can be removed from the target's head.js file.

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

--HG--
extra : moz-landing-system : lando
2020-01-08 13:26:42 +00:00
Henrik Skupin
15e30b89a5 Bug 1607461 - [remote] Implement Network.setCacheDisabled. r=remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D58996

--HG--
extra : moz-landing-system : lando
2020-01-08 12:40:49 +00:00
Henrik Skupin
986231c6dc Bug 1596601 - [remote] Skip some more crashing Puppeteer unit tests. r=remote-protocol-reviewers,ato
Depends on D59006

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

--HG--
extra : moz-landing-system : lando
2020-01-08 12:14:57 +00:00
Henrik Skupin
c01d481fbf Bug 1596601 - [remote] Add place-holder for Page.setInterceptFileChooserDialog. r=remote-protocol-reviewers,ato
This feature is experimental and not required to get implemented
on our end as of now. As such adding a place-holder will be enough.

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

--HG--
extra : moz-landing-system : lando
2020-01-08 11:01:17 +00:00
Andreas Tolfsen
e221feba47 bug 1607500: remote: preserve task name in add_agent_task() r=remote-protocol-reviewers,whimboo
Similarly to bug 1603451, the name of the function passed to the
specialised add_agent_task() is lost because of the anonymous
function wrapper inside.

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

--HG--
extra : moz-landing-system : lando
2020-01-08 08:34:46 +00:00
Andreas Tolfsen
8b58648e51 bug 1606612: remote: pretty-print WebSocket JSON payloads when verbose logging r=remote-protocol-reviewers,whimboo
When remote.log.level is Log.Level.Info or above, verbose logging
is enabled and we pretty-print JSON payloads in requests to the
HTTPD in JSONHandler.

This patch matches the behaviour of the JSONHandler logging, where
JSON payloads are logged to stdout with special formatting before
being transmitted across WebSocket connections.

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

--HG--
extra : moz-landing-system : lando
2020-01-06 09:37:02 +00:00
Andreas Tolfsen
4f8001ba30 bug 1606612: remote: stop sanitizing JSON payloads from the HTTPD r=remote-protocol-reviewers,whimboo
The CDP protocol expects consistent types to be returned.  By filtering
out null values and strings of zero length we break this promise.

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

--HG--
extra : moz-landing-system : lando
2020-01-07 16:22:49 +00:00
Andreas Tolfsen
cdc44450f5 bug 1598286: remote: upgrade to http 0.2 r=remote-protocol-reviewers,whimboo
Upgrading to http 0.2 will give us bytes ^0.5 which removes
a dependency on iovec.  iovec is problematic for us because it
depends on a version of winapi that does not compile on Windows AArch64.

The effect of this should be that the remote agent is now possible
to compile on Windows AArch64.

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

--HG--
extra : moz-landing-system : lando
2020-01-06 14:24:17 +00:00
Henrik Skupin
29313adecb Bug 1600055 - [remote] Switch from using "outerWindowID" to "browsingContext.id". r=remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D58764

--HG--
extra : moz-landing-system : lando
2020-01-06 12:55:35 +00:00
Henrik Skupin
7223ef9216 Bug 1605650 - [remote] Temporarily skip test browser_getCookies.js for ccov tests on Windows 10. r=remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D58746

--HG--
extra : moz-landing-system : lando
2020-01-06 09:52:30 +00:00
Andreas Tolfsen
9444fa34c7 bug 1606818: remote: use nsIHttpServer for unregistering handler r=remote-protocol-reviewers,whimboo
nsIHttpServer.registerPathHandler() is designed to take null as
the second argument to unregister path handlers.  This saves us
from having to modify its internal state, and fixes a minor TODO
in the remote agent initialisation code.

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

--HG--
extra : moz-landing-system : lando
2020-01-03 16:19:33 +00:00
Andreas Tolfsen
4ff0799afe bug 1565164: remote: rename Domains DomainCache r=remote-protocol-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D58610

--HG--
rename : remote/domains/Domains.jsm => remote/domains/DomainCache.jsm
rename : remote/test/unit/test_Domains.js => remote/test/unit/test_DomainCache.js
extra : moz-landing-system : lando
2020-01-06 09:32:11 +00:00
Andreas Tolfsen
112d47f40c bug 1565164: remote: rename Targets TargetList r=remote-protocol-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D58609

--HG--
rename : remote/targets/Targets.jsm => remote/targets/TargetList.jsm
extra : moz-landing-system : lando
2020-01-06 09:32:09 +00:00
Andreas Tolfsen
1b5c764457 bug 1606834: remote: document fdescribe(), fit(), and Mocha flags r=remote-protocol-reviewers,whimboo
We were lacking documentation on how to run inidividual Puppeteer
tests.  It turns out this is not possible yet to do on a per-file
basis, like other test harnesses.

Instead, suggest use of fdescribe()/fit() and recommend some useful
Mocha flags.

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

--HG--
extra : moz-landing-system : lando
2020-01-03 16:11:19 +00:00
Andreas Tolfsen
d9f8d5f71e bug 1606317: remote: revert "Disable Puppeteer tests in ignorehttpserrors.spec.js which crash the browser." r=remote-protocol-reviewers,whimboo
This reverts the commit:

	git:	d640ab64b993431099cd9205297bfff464d76927
	hg:	9f6327c0d8298ec58a6c9f8d51526872d01d765e

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

--HG--
extra : moz-landing-system : lando
2020-01-03 13:44:39 +00:00
Coroiu Cristina
9513ceda80 Backed out 3 changesets (bug 1606317) for build bustage at build/src/security/manager/ssl/nsCertOverrideService.cpp on a CLOSED TREE
Backed out changeset 9c34a0a40e62 (bug 1606317)
Backed out changeset 467db2b310a7 (bug 1606317)
Backed out changeset b12669c3ade7 (bug 1606317)
2020-01-03 15:11:29 +02:00
Andreas Tolfsen
27106918c7 bug 1606317: remote: revert "Disable Puppeteer tests in ignorehttpserrors.spec.js which crash the browser." r=remote-protocol-reviewers,whimboo
This reverts the commit:

	git:	d640ab64b993431099cd9205297bfff464d76927
	hg:	9f6327c0d8298ec58a6c9f8d51526872d01d765e

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

--HG--
extra : moz-landing-system : lando
2020-01-03 10:16:13 +00:00
Henrik Skupin
db8cf153cd Bug 1593979 - [remote] Always include global head.js and chrome-remote-interface.js. r=remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D54568

--HG--
extra : moz-landing-system : lando
2020-01-03 09:02:15 +00:00
Henrik Skupin
b35d14d120 Bug 1605722 - [remote] Enable target discovery by default for browser chrome tests. r=remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D58162

--HG--
extra : moz-landing-system : lando
2020-01-02 21:13:20 +00:00
Brindusan Cristian
87aed6f2be Backed out 2 changesets (bug 1606612) for 'remote' failures at browser_scriptToEvaluateOnNewDocument.js. CLOSED TREE
Backed out changeset d0ff02a17ad9 (bug 1606612)
Backed out changeset 4368466b495b (bug 1606612)
2020-01-02 18:19:40 +02:00
Andreas Tolfsen
986fa21674 bug 1606613: remote: stop logging handled errors r=remote-protocol-reviewers,whimboo
Errors that arise from use of the protocol, for example by the client
passing in the wrong argument or an operationg being unsupported, are
returned to the client.  Since these are not inherent implementation
problems there is no point to double-logging them in the server.

This is a left-over from when the remote agent was in a prototype
stage and we couldn't always rely on the Puppeteer client to
interact with Firefox correctly.

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

--HG--
extra : moz-landing-system : lando
2020-01-02 12:02:17 +00:00
Andreas Tolfsen
d482c88ae3 bug 1606612: remote: pretty-print WebSocket JSON payloads when verbose logging r=remote-protocol-reviewers,whimboo
When remote.log.level is Log.Level.Info or above, verbose logging
is enabled and we pretty-print JSON payloads in requests to the
HTTPD in JSONHandler.

This patch matches the behaviour with JSON payloads being transmitted
across WebSocket connections.

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

--HG--
extra : moz-landing-system : lando
2020-01-02 13:08:54 +00:00
Andreas Tolfsen
4f915f8ab5 bug 1606612: remote: move payload sanitization to Protocol r=remote-protocol-reviewers,whimboo
Moving the JSON payload sanitisation function to Protocol.jsm
means we can share it across modules.

The patch also adds new tests.

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

--HG--
extra : moz-landing-system : lando
2020-01-02 13:29:01 +00:00
Henrik Skupin
950468de8e Bug 1606290 - [remote] Disable more Puppeteer tests which crash the harness.
Depends on D58488

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

--HG--
extra : moz-landing-system : lando
2020-01-01 18:50:48 +00:00
Henrik Skupin
0951041609 Bug 1606290 - [remote] Re-enable Puppeteer tests for Firefox which do not crash.
Depends on D58487

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

--HG--
extra : moz-landing-system : lando
2020-01-01 18:28:34 +00:00
Henrik Skupin
7d9a72d23b Bug 1606317 - [remote] Disable Puppeteer tests in ignorehttpserrors.spec.js which crash the browser.
Differential Revision: https://phabricator.services.mozilla.com/D58487

--HG--
extra : moz-landing-system : lando
2020-01-01 18:51:51 +00:00
Mohit Singh
90811829d2 Bug 1601037 - options parameter set default to {} in Page.jsm:printToPDF() and IO.jsm:close() r=remote-protocol-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D58213

--HG--
extra : moz-landing-system : lando
2019-12-27 11:27:33 +00:00
Henrik Skupin
2dd64e92cd Bug 1590098 - [remote] Implement basic support for Network.getCookies. r=remote-protocol-reviewers,ato,maja_zf
This patch adds basic support for retrieving cookies,
which means that it returns the cookies for the currently
active target.

Hereby it has the following limitations:

1. It does not walk the frame tree, and as such only returns
the cookies from the top-level frame. Support for that will
be added once frames can correctly be handled, which means
once support for the JSWindowActor API has been landed.

2. The "urls" parameter is not supported because it is
unclear right now what it actually does. More investigation
is necessary before any implementation can happen.

3. There is no support for the file:// protocol yet.

4. Dot domains aren't taken care of yet.

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

--HG--
extra : moz-landing-system : lando
2019-12-20 19:38:05 +00:00
Maja Frydrychowicz
84e1accdfe Bug 1605413 - Disable Puppeteer unit tests that crash the test harness
Differential Revision: https://phabricator.services.mozilla.com/D58008

--HG--
extra : moz-landing-system : lando
2019-12-20 17:38:57 +00:00
Maja Frydrychowicz
08af6c6582 Bug 1600959 - Implement Runtime.executionContextsCleared r=remote-protocol-reviewers,whimboo,ato
Differential Revision: https://phabricator.services.mozilla.com/D55868

--HG--
extra : moz-landing-system : lando
2019-12-19 19:58:52 +00:00
Andreas Tolfsen
5c0d22572b bug 1603451: remote: preserve test name from original task r=remote-protocol-reviewers,maja_zf,whimboo
The browser-chrome test name is derived from the function name.
The function name of the original task is lost when wrapped inside
the add_task() override in remote/test/browser/head.js.

This fixes the problem by rewriting the taskFn name on the new wrapper.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 14:58:30 +00:00
Andreas Tolfsen
defc8d9410 bug 1603451: remote: document add_task() r=remote-protocol-reviewers,maja_zf,whimboo
The documentation for the overridden add_task() is quite poor.
Document it as to not confuse new developers why it is behaving
differently to the default bc add_task().

DONTBUILD

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

--HG--
extra : moz-landing-system : lando
2019-12-18 12:53:52 +00:00
Mohit Singh
d7b28ea9a2 Bug 1601037 - initialized option parameter present in 3 methods to default {} r=remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D57745

--HG--
extra : moz-landing-system : lando
2019-12-19 10:40:55 +00:00
Henrik Skupin
25fdbb9aff Bug 1599994 - [remote] Implement Page.printToPDF. r=remote-protocol-reviewers,ato,maja_zf
Differential Revision: https://phabricator.services.mozilla.com/D55961

--HG--
extra : moz-landing-system : lando
2019-12-16 16:19:04 +00:00
Henrik Skupin
ce07f3fba4 Bug 1600058 - [remote] Implement IO.close. r=remote-protocol-reviewers,ato,maja_zf
Differential Revision: https://phabricator.services.mozilla.com/D55969

--HG--
extra : moz-landing-system : lando
2019-12-16 16:19:02 +00:00
Henrik Skupin
5a966347fc Bug 1600053 - [remote] Implement IO.read. r=remote-protocol-reviewers,baku,ato,maja_zf
This patch implements the IO.read() method to allow
reading streams for files and blobs.

Therefor all the methods in the IO domain need a registry
for streams. Those have to be stored globally because
they need to be kept existent across different client
connections.

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

--HG--
extra : moz-landing-system : lando
2019-12-16 16:17:59 +00:00
Henrik Skupin
162084495c Bug 1600053 - [remote] Add registry for managing references to streams. r=remote-protocol-reviewers,maja_zf
Differential Revision: https://phabricator.services.mozilla.com/D57304

--HG--
extra : moz-landing-system : lando
2019-12-16 16:17:47 +00:00
Kris Maglione
9853440599 Bug 1596918: Part 3b - Run code formatters on files changed by previous patch. r=mccr8,remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D53741

--HG--
extra : moz-landing-system : lando
2019-12-13 20:36:24 +00:00
Kris Maglione
94e3b0bd8d Bug 1596918: Part 3a - Scripted rewrite of most ContentTask.spawn calls to SpecialPowers.spawn calls. r=mccr8,remote-protocol-reviewers,ato
This is generally pretty straightforward, and rewrites nearly all calls. It
skips the ones that it can detect using frame script globals like
`sendAsyncMessage`, though.

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

--HG--
extra : moz-landing-system : lando
2019-12-13 20:36:16 +00:00
Maja Frydrychowicz
260c75a1d1 Bug 1603266 - Flush irrelevant events when testing context creation; r=remote-protocol-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D57047

--HG--
extra : moz-landing-system : lando
2019-12-13 15:51:46 +00:00
Andreas Tolfsen
b7a5c8548a bug 1600330: remote: test nsIRemoteAgent r=remote-protocol-reviewers,maja_zf,whimboo
Adds browser-chrome tests for the main entry point of the remote
agent, nsIRemoteAgent.

add_agent_task() wraps add_plain_task() (which again wraps the
original add_task()) so we can ensure that the agent isn't listening
before a test runs, and that any modified state such as preferences
is reset afterwards.

The tests rely heavily on the assumption that nsIRemoteAgent.close()
behaves as a no-op when the server is not listening.

This patch is a follow-up to bug 1590828.

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

--HG--
extra : moz-landing-system : lando
2019-12-13 07:31:54 +00:00
Andreas Tolfsen
ff89580849 bug 1600330: remote: add fail() browser-chrome test helper r=remote-protocol-reviewers,maja_zf
fail() will cause a test assertion failure equivalent to ok(false).

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

--HG--
extra : moz-landing-system : lando
2019-12-13 07:30:23 +00:00
Henrik Skupin
947e858c46 Bug 1588622 - [remote] Implement "layoutViewport" and "contentSize" for Page.getLayoutMetrics. r=remote-protocol-reviewers,maja_zf
Differential Revision: https://phabricator.services.mozilla.com/D56911

--HG--
extra : moz-landing-system : lando
2019-12-12 18:27:17 +00:00
Maja Frydrychowicz
ab6bc896fd Bug 1597879 - Implement Page.addScriptToEvaluateOnNewDocument; r=remote-protocol-reviewers,whimboo,ato
Differential Revision: https://phabricator.services.mozilla.com/D55334

--HG--
extra : moz-landing-system : lando
2019-12-11 20:49:46 +00:00