forked from mirrors/gecko-dev
		
	 1bb1750150
			
		
	
	
		1bb1750150
		
	
	
	
	
		
			
			Differential Revision: https://phabricator.services.mozilla.com/D20093 --HG-- extra : moz-landing-system : lando
		
			
				
	
	
		
			39 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|   SimpleTest.waitForExplicitFinish();
 | |
| 
 | |
|   function frameLoaded(finishWhenCalled = true, lastObject = false) {
 | |
|     var testframe = document.getElementById("testframe");
 | |
|     function getNode(list) {
 | |
|       if (list.length === 0)
 | |
|         return undefined;
 | |
|       return lastObject ? list[list.length - 1] : list[0];
 | |
|     }
 | |
|     var embed = getNode(document.getElementsByTagName("embed"));
 | |
|     if (undefined === embed)
 | |
|       embed = getNode(document.getElementsByTagName("object"));
 | |
| 
 | |
|     // In the file:// URI case, this ends up being cross-origin.
 | |
|     // Skip these checks in that case.
 | |
|     if (testframe.contentDocument) {
 | |
|       var content = testframe.contentDocument.body.innerHTML;
 | |
|       if (!content.length)
 | |
|         return;
 | |
| 
 | |
|       var filename = embed.getAttribute("src") ||
 | |
|           embed.getAttribute("geturl") ||
 | |
|           embed.getAttribute("geturlnotify") ||
 | |
|           embed.getAttribute("data");
 | |
| 
 | |
|       var req = new XMLHttpRequest();
 | |
|       req.open("GET", filename, false);
 | |
|       req.overrideMimeType("text/plain; charset=x-user-defined");
 | |
|       req.send(null);
 | |
|       is(req.status, 200, "bad XMLHttpRequest status");
 | |
|       is(content, req.responseText.replace(/\r\n/g, "\n"),
 | |
|          "content doesn't match");
 | |
|     }
 | |
| 
 | |
|     is(embed.getError(), "pass", "plugin reported error");
 | |
|     if (finishWhenCalled) {
 | |
|       SimpleTest.finish();
 | |
|     }
 | |
|   }
 |