forked from mirrors/gecko-dev
		
	 1a33a37654
			
		
	
	
		1a33a37654
		
	
	
	
	
		
			
			Not setting mIsSrcdocEntry causes us to drop srcdoc data and not set INTERNAL_LOAD_FLAGS_IS_SRCDOC in FillLoadInfo for srcdoc restores. Differential Revision: https://phabricator.services.mozilla.com/D117479
		
			
				
	
	
		
			44 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /* Any copyright is dedicated to the Public Domain.
 | |
|    http://creativecommons.org/publicdomain/zero/1.0/ */
 | |
| 
 | |
| "use strict";
 | |
| 
 | |
| function makeURL(srcdocValue) {
 | |
|   return `data:text/html;charset=utf-8,<iframe srcdoc="${srcdocValue}">`;
 | |
| }
 | |
| 
 | |
| async function runTest(srcdocValue) {
 | |
|   forgetClosedWindows();
 | |
| 
 | |
|   // Open a new tab.
 | |
|   let tab = BrowserTestUtils.addTab(gBrowser, makeURL(srcdocValue));
 | |
|   await promiseBrowserLoaded(tab.linkedBrowser);
 | |
| 
 | |
|   // Close that tab.
 | |
|   await promiseRemoveTabAndSessionState(tab);
 | |
| 
 | |
|   // Restore that tab.
 | |
|   tab = ss.undoCloseTab(window, 0);
 | |
|   await promiseTabRestored(tab);
 | |
| 
 | |
|   // Verify contents were restored correctly.
 | |
|   let iframe = await SpecialPowers.spawn(
 | |
|     tab.linkedBrowser,
 | |
|     [],
 | |
|     () => content.document.querySelector("iframe").browsingContext
 | |
|   );
 | |
|   await SpecialPowers.spawn(iframe, [srcdocValue], text => {
 | |
|     Assert.equal(content.document.body.innerText, text, "Didn't load neterror");
 | |
|   });
 | |
| 
 | |
|   // Cleanup.
 | |
|   gBrowser.removeTab(tab);
 | |
| }
 | |
| 
 | |
| add_task(async function test_non_blank() {
 | |
|   await runTest("value");
 | |
| });
 | |
| 
 | |
| add_task(async function test_blank() {
 | |
|   await runTest("");
 | |
| });
 |