forked from mirrors/gecko-dev
56 lines
1.5 KiB
JavaScript
56 lines
1.5 KiB
JavaScript
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
|
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
const { TabManager } = ChromeUtils.importESModule(
|
|
"chrome://remote/content/shared/TabManager.sys.mjs"
|
|
);
|
|
|
|
class MockTopBrowsingContext {
|
|
constructor() {
|
|
this.embedderElement = { permanentKey: {} };
|
|
this.id = 1;
|
|
this.top = this;
|
|
}
|
|
}
|
|
|
|
class MockBrowsingContext {
|
|
constructor() {
|
|
this.id = 2;
|
|
|
|
const topContext = new MockTopBrowsingContext();
|
|
this.parent = topContext;
|
|
this.top = topContext;
|
|
}
|
|
}
|
|
|
|
const mockTopBrowsingContext = new MockTopBrowsingContext();
|
|
const mockBrowsingContext = new MockBrowsingContext();
|
|
|
|
add_task(async function test_getIdForBrowsingContext() {
|
|
// Browsing context not set.
|
|
equal(TabManager.getIdForBrowsingContext(null), null);
|
|
equal(TabManager.getIdForBrowsingContext(undefined), null);
|
|
|
|
// Child browsing context.
|
|
equal(
|
|
TabManager.getIdForBrowsingContext(mockBrowsingContext),
|
|
mockBrowsingContext.id
|
|
);
|
|
|
|
const browser = mockTopBrowsingContext.embedderElement;
|
|
equal(
|
|
TabManager.getIdForBrowsingContext(mockTopBrowsingContext),
|
|
TabManager.getIdForBrowser(browser)
|
|
);
|
|
});
|
|
|
|
add_task(async function test_removeTab() {
|
|
// Tab not defined.
|
|
await TabManager.removeTab(null);
|
|
});
|
|
|
|
add_task(async function test_selectTab() {
|
|
// Tab not defined.
|
|
await TabManager.selectTab(null);
|
|
});
|