This patch adds a new DAMP test to track the time to when the user is able to interact with a clickable search result match.
Differential Revision: https://phabricator.services.mozilla.com/D167521
This event was only used in this test.
Unfortunately, I wasn't able to keep the same logic in the test while keeping it reliable.
I prefer to remove this test-only event and simplify the test to only ensure
we safely ignore subsequent calls to toggle.
What is hard to know from the test, when calling toggle in some following event loops
is if this will be ignored -or- close/open a toolbox...
Differential Revision: https://phabricator.services.mozilla.com/D165715
Profiler didn't have a screenshots feature added for the talos tests, that's
why we weren't capturing any screenshots for talos profiling tasks. Screenshots
make the analysis a lot easier when there is a regression that is related to
visual changes. Also they help people understand the state of a test. We already
have screenshots for raptor browsertime tests when the profiler is enabled. We
also wanted to enable this for talos to give our users more context into
what the test is doing at a certain time.
After this patch, talos profiles will include tracks at the top of the profiler
analysis view that shows the screenshot of each window.
Differential Revision: https://phabricator.services.mozilla.com/D166930
Presently we pull wptserve 3.0 from pypi, however it is incompatible with Python 3.10 that is shipping as default on more and more platforms (e.g. Linux).
This patch instead pulls the in-tree version of wptserve which is more up to date and compatible and should help future proof the Raptor and Talos tests.
Differential Revision: https://phabricator.services.mozilla.com/D166388
This was no longer implemented/shown in the fission browser toolbox.
Now that we removed the non-fission toolbox, we can remove this feature.
Instead, content process messages are shown/hidden depending on browser toolbox's scope.
"everything" will show them. "parent-process" won't.
Differential Revision: https://phabricator.services.mozilla.com/D165026
This complexify the existing tests a bit, but will make the management from the Toolbox more obvious.
The metrics test highlights that we allow to prevent loading the sourcemap modules
unless it is strictly necessary!
(Also I forgot to remove the source-map-loader from the list of browser loader module...)
Differential Revision: https://phabricator.services.mozilla.com/D164694
Because of this, we have to now pass the worker URL via WorkerDispatcher constructor.
Doing this should help then extend WorkerDispatcher instead of manually instantiating it.
About browser_jsterm_hide_when_devtools_chrome_enabled_false.js, as the SourceMapLoader
is now started lazily, the worker is no longer started during this test
and so we no longer have to wait for it.
And browser_jsterm_await_paused.js was failing because we resumed too quickly.
I added some code to better wait for awaitExpression full evaluation.
Differential Revision: https://phabricator.services.mozilla.com/D164547
Previously we had a "leaf" feature but it's been removed in Bug 1571089. It
doesn't break the tests, but it always outputs an error string to the std out
and it might be annoying for our users or it can get in the way of analyzing
other errors. It's good to remove it.
Differential Revision: https://phabricator.services.mozilla.com/D163126
This used to be a node package. Let's make it become regular commonjs devtools modules.
This will make it trivial to migrate this to ES Modules.
Also possibly make this code become the unique layer in m-c on top of the source-map package.
We no longer use webpack to build the two bundles (index.js and worker.js),
instead, we are using the toolkit worker loader (require.js) in order to load
all this code without any build step.
As this is no longer a node package, I removed node-specific modules (assertRoot/wasmAsset)
and simplify the definition of wasm file URIs as they are now fixed.
Also moving the debugger to load internal "devtools/client/shared/source-map/source-map.js"
module in jest as running the Web Worker instantiated by source-map/index.js is too complex.
Differential Revision: https://phabricator.services.mozilla.com/D159115
We want to encourage extension developers to use `browser_specific_settings` instead of `applications`, which will be unsupported in Manifest Version 3+. This patch makes sure test manifests in m-c won't cause any issues in the future.
Depends on D160541
Differential Revision: https://phabricator.services.mozilla.com/D160668
We can't test source-map package performance yet as it isn't exposed
and only loaded within a webpack bundle.
But it would be nice to also cover the code on top of the source-map package,
the "source map loader".
Differential Revision: https://phabricator.services.mozilla.com/D160199
It calls `pre[contenteditable].focus()`, but when talos tests run, the URL bar
keeps having focus. Therefore, the `focus()` call in content cannot steal focus
from the chrome UI. Then, it does not pay the cost of `Selection.modify` in
the first loop because it does nothing when there is no selection ranges.
(Before bug 1789967, `Selection` was collapsed to end of the document at
loading by `HTMLEditor`, but it's now not performed, and due to the silent
failure of the call of `focus()`, nobody collapse selection in the document.)
Depends on D158551
Differential Revision: https://phabricator.services.mozilla.com/D158552