summaryrefslogtreecommitdiffstats
path: root/browser/components/sessionstore/test/browser_579879.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/sessionstore/test/browser_579879.js')
-rw-r--r--browser/components/sessionstore/test/browser_579879.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/browser/components/sessionstore/test/browser_579879.js b/browser/components/sessionstore/test/browser_579879.js
new file mode 100644
index 0000000000..4def22bb01
--- /dev/null
+++ b/browser/components/sessionstore/test/browser_579879.js
@@ -0,0 +1,31 @@
+"use strict";
+
+add_task(async function () {
+ let tab1 = BrowserTestUtils.addTab(
+ gBrowser,
+ "data:text/plain;charset=utf-8,foo"
+ );
+ gBrowser.pinTab(tab1);
+
+ await promiseBrowserLoaded(tab1.linkedBrowser);
+ let tab2 = BrowserTestUtils.addTab(gBrowser);
+ gBrowser.pinTab(tab2);
+
+ is(
+ Array.prototype.indexOf.call(gBrowser.tabs, tab1),
+ 0,
+ "pinned tab 1 is at the first position"
+ );
+ await promiseRemoveTabAndSessionState(tab1);
+
+ tab1 = undoCloseTab();
+ ok(tab1.pinned, "pinned tab 1 has been restored as a pinned tab");
+ is(
+ Array.prototype.indexOf.call(gBrowser.tabs, tab1),
+ 0,
+ "pinned tab 1 has been restored to the first position"
+ );
+
+ BrowserTestUtils.removeTab(tab1);
+ BrowserTestUtils.removeTab(tab2);
+});