gecko-dev/remote/test/browser/browser_tabs.js
Alexandre Poirot 6141376ca9 Bug 1537768 - Override add_task to translate cdp exception from head.js. r=remote-protocol-reviewers,ato
This allows improving all tests exceptions without requiring
any specific to be done in each tests.
I'm also moving a few imports to head.js to share the most into head.js.

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

--HG--
extra : moz-landing-system : lando
2019-05-02 12:00:39 +00:00

35 lines
1.1 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
// Test very basic CDP features.
const TEST_URI = "data:text/html;charset=utf-8,default-test-page";
add_task(async function() {
// Start the CDP server
await RemoteAgent.listen(Services.io.newURI("http://localhost:9222"));
const CDP = await getCDP();
// Use gBrowser.addTab instead of BrowserTestUtils as it creates the tab differently.
// It demonstrates a race around tab.linkedBrowser.browsingContext being undefined
// when accessing this property early.
const tab = gBrowser.addTab(TEST_URI, {
skipAnimation: true,
triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal(),
});
await BrowserTestUtils.browserLoaded(tab.linkedBrowser);
let targets = await getTargets(CDP);
ok(targets.some(target => target.url == TEST_URI), "Found the tab in target list");
BrowserTestUtils.removeTab(tab);
targets = await getTargets(CDP);
ok(!targets.some(target => target.url == TEST_URI), "Tab has been removed from the target list");
await RemoteAgent.close();
});