mirror of
				https://github.com/mozilla/gecko-dev.git
				synced 2025-11-04 10:18:41 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/* Any copyright is dedicated to the Public Domain.
 | 
						|
   http://creativecommons.org/publicdomain/zero/1.0/ */
 | 
						|
 | 
						|
async function test() {
 | 
						|
  let assertNumberOfTabs = function(num, msg) {
 | 
						|
    is(gBrowser.tabs.length, num, msg);
 | 
						|
  };
 | 
						|
 | 
						|
  let assertNumberOfVisibleTabs = function(num, msg) {
 | 
						|
    is(gBrowser.visibleTabs.length, num, msg);
 | 
						|
  };
 | 
						|
 | 
						|
  waitForExplicitFinish();
 | 
						|
 | 
						|
  // check prerequisites
 | 
						|
  assertNumberOfTabs(1, "we start off with one tab");
 | 
						|
 | 
						|
  // setup
 | 
						|
  let tab = BrowserTestUtils.addTab(gBrowser, "about:mozilla");
 | 
						|
 | 
						|
  await promiseBrowserLoaded(tab.linkedBrowser);
 | 
						|
 | 
						|
  // hide the newly created tab
 | 
						|
  assertNumberOfVisibleTabs(2, "there are two visible tabs");
 | 
						|
  gBrowser.showOnlyTheseTabs([gBrowser.tabs[0]]);
 | 
						|
  assertNumberOfVisibleTabs(1, "there is one visible tab");
 | 
						|
  ok(tab.hidden, "newly created tab is now hidden");
 | 
						|
 | 
						|
  // close and restore hidden tab
 | 
						|
  await promiseRemoveTabAndSessionState(tab);
 | 
						|
  tab = ss.undoCloseTab(window, 0);
 | 
						|
 | 
						|
  // check that everything was restored correctly, clean up and finish
 | 
						|
  await promiseBrowserLoaded(tab.linkedBrowser);
 | 
						|
  is(
 | 
						|
    tab.linkedBrowser.currentURI.spec,
 | 
						|
    "about:mozilla",
 | 
						|
    "restored tab has correct url"
 | 
						|
  );
 | 
						|
 | 
						|
  gBrowser.removeTab(tab);
 | 
						|
  finish();
 | 
						|
}
 |