Annotating each test individually lets us avoid introducing new failing tests
while we go through the backlog of failing tests.
Depends on D129162
Differential Revision: https://phabricator.services.mozilla.com/D129163
Annotating each test individually lets us avoid introducing new failing tests
while we go through the backlog of failing tests.
Depends on D129162
Differential Revision: https://phabricator.services.mozilla.com/D129163
When using a custom Firefox profile for Puppeteer the modified
preferences as present in prefs.js need to be reset once the
profile is no longer needed by Puppeteer. If not done this could
cause side-effects when the profile is used next time outside
of Puppeteer.
Differential Revision: https://phabricator.services.mozilla.com/D128452
This allows printing only specified page ranges.
We take them in the form ["1-2", 4, "5-"] and convert to a flat array
of the form [1,2,4,4,5,2147483647], which is appropriate for
nsIPrintSettings.
Testing relies on the fact that wpt vendored pdf.js for print
reftests; using the same mechaism we can ensure the correct pages were
printed.
Differential Revision: https://phabricator.services.mozilla.com/D97600
If the New Session command doesn't wait for the initial tab
to have finished loading, any other command send right away
could fail because the document could be replaced.
Differential Revision: https://phabricator.services.mozilla.com/D130158
This ensures that when the default value of 'fission.autostart' changes, we
don't accidentally start running with fission enabled even without
'--enable-fission'.
As a follow-up, we should switch the flag to '--disable-fission' once the pref
has flipped.
Differential Revision: https://phabricator.services.mozilla.com/D129820
Depends on D123655
With this patch, the MessageHandler can immediately check if a command is implemented by the modules, and therefore reject as early as possible.
This is implemented via a checkCommand method on MessageHandler.
Other required changes:
- ModuleRegistry now owns the logic to import BiDi modules.
- ModuleCache exposes a `getAllModuleClasses` to get all the relevant modules for a moduleName+destination pair.
Error messages have been improved and are verified with a dedicated test
Differential Revision: https://phabricator.services.mozilla.com/D123655
Add a dedicated Errors module to remote/shared/messagehandler, similar to shared/webdriver/Errors.jsm
Errors thrown from content process MessageHandler are serialized before being forwarded to the parent process.
We should probably make all errors inherit from a generic RemoteError class which would support the same serialization/deserialization API
Differential Revision: https://phabricator.services.mozilla.com/D127620
For most of the CDP browser chrome tests we can make use of
HTTPS URLs to access test pages.
We should not do that for cookie related tests, which also
have to test HTTP.
Differential Revision: https://phabricator.services.mozilla.com/D127875
When the browser child process has logging enabled
and output on stdout isn't constantly processed,
the browser process is about to freeze.
To avoid such a situation at least the stdout
pipe shouldn't be set by default but only if
dumpio is enabled.
Differential Revision: https://phabricator.services.mozilla.com/D127883
Because with Fission enabled the "DOMWindowCreated" event
is emitted way early it can be used to detect when a new
frame has been created.
But with Fission disabled the event is received too late,
and as such the appropriate network requests and responses
for the document have already been done. That means that
Puppeteer actually hangs waiting for them.
As such keep using the "webnavigation-create" observer
notification for Fission-disabled builds for now.
Differential Revision: https://phabricator.services.mozilla.com/D127521
This patch no longer unregisters the MarionetteEvents actors. Instead when the session ends, a flag is set on sharedData so that MarionetteEventsChild actors stop sending events to the parent process
Differential Revision: https://phabricator.services.mozilla.com/D126371
This patch no longer unregisters the MarionetteEvents actors. Instead when the session ends, a flag is set on sharedData so that MarionetteEventsChild actors stop sending events to the parent process
Differential Revision: https://phabricator.services.mozilla.com/D126371
This removes the `@CommandProvider` decorator and the need to implement
mach commands inside subclasses of `MachCommandBase`, and moves all
existing commands out from classes to module level functions.
Differential Revision: https://phabricator.services.mozilla.com/D121512