summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/tabs/browser_openURI_background.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/base/content/test/tabs/browser_openURI_background.js')
-rw-r--r--browser/base/content/test/tabs/browser_openURI_background.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/browser/base/content/test/tabs/browser_openURI_background.js b/browser/base/content/test/tabs/browser_openURI_background.js
new file mode 100644
index 0000000000..53e329dd8f
--- /dev/null
+++ b/browser/base/content/test/tabs/browser_openURI_background.js
@@ -0,0 +1,41 @@
+/* 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/. */
+
+"use strict";
+
+add_task(async function () {
+ const tabCount = gBrowser.tabs.length;
+ const currentTab = gBrowser.selectedTab;
+
+ const tests = [
+ ["OPEN_NEWTAB", false],
+ ["OPEN_NEWTAB_BACKGROUND", true],
+ ];
+
+ for (const [flag, isBackground] of tests) {
+ window.browserDOMWindow.openURI(
+ makeURI("about:blank"),
+ null,
+ Ci.nsIBrowserDOMWindow[flag],
+ Ci.nsIBrowserDOMWindow.OPEN_NEW,
+ Services.scriptSecurityManager.getSystemPrincipal()
+ );
+
+ is(gBrowser.tabs.length, tabCount + 1, `${flag} opens a new tab`);
+
+ const openedTab = gBrowser.tabs[tabCount];
+
+ if (isBackground) {
+ is(
+ gBrowser.selectedTab,
+ currentTab,
+ `${flag} opens a new background tab`
+ );
+ } else {
+ is(gBrowser.selectedTab, openedTab, `${flag} opens a new foreground tab`);
+ }
+
+ gBrowser.removeTab(openedTab);
+ }
+});