browser_628270.js (1232B)
1 /* Any copyright is dedicated to the Public Domain. 2 http://creativecommons.org/publicdomain/zero/1.0/ */ 3 4 async function test() { 5 let assertNumberOfTabs = function (num, msg) { 6 is(gBrowser.tabs.length, num, msg); 7 }; 8 9 let assertNumberOfVisibleTabs = function (num, msg) { 10 is(gBrowser.visibleTabs.length, num, msg); 11 }; 12 13 waitForExplicitFinish(); 14 15 // check prerequisites 16 assertNumberOfTabs(1, "we start off with one tab"); 17 18 // setup 19 let tab = BrowserTestUtils.addTab(gBrowser, "about:mozilla"); 20 21 await promiseBrowserLoaded(tab.linkedBrowser); 22 23 // hide the newly created tab 24 assertNumberOfVisibleTabs(2, "there are two visible tabs"); 25 BrowserTestUtils.showOnlyTheseTabs(gBrowser, [gBrowser.tabs[0]]); 26 assertNumberOfVisibleTabs(1, "there is one visible tab"); 27 ok(tab.hidden, "newly created tab is now hidden"); 28 29 // close and restore hidden tab 30 await promiseRemoveTabAndSessionState(tab); 31 tab = ss.undoCloseTab(window, 0); 32 33 // check that everything was restored correctly, clean up and finish 34 await promiseBrowserLoaded(tab.linkedBrowser); 35 is( 36 tab.linkedBrowser.currentURI.spec, 37 "about:mozilla", 38 "restored tab has correct url" 39 ); 40 41 gBrowser.removeTab(tab); 42 finish(); 43 }