forked from mirrors/gecko-dev
		
	 0d460e3432
			
		
	
	
		0d460e3432
		
	
	
	
	
		
			
			This is split from the previous changeset since if we include dom/ the file size is too large for phabricator to handle. This is an autogenerated commit to handle scripts loading mochitest harness files, in the simple case where the script src is on the same line as the tag. This was generated with https://bug1544322.bmoattachments.org/attachment.cgi?id=9058170 using the `--part 2` argument. Differential Revision: https://phabricator.services.mozilla.com/D27457 --HG-- extra : moz-landing-system : lando
		
			
				
	
	
		
			59 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE HTML>
 | |
| <html>
 | |
| <!--
 | |
| https://bugzilla.mozilla.org/show_bug.cgi?id=1212477
 | |
| -->
 | |
| <head>
 | |
|   <meta charset="utf-8">
 | |
|   <title>Test for Bug 1212477 - Needs a way to access to <canvas>'s context (2d, webgl) from Anonymous Content API</title>
 | |
|   <script src="/tests/SimpleTest/SimpleTest.js"></script>
 | |
|   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
 | |
| </head>
 | |
| <body>
 | |
|   <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1212477">Mozilla Bug 1212477</a>
 | |
|   <div>
 | |
|     <div id="id" class="test">text content</div>
 | |
|     <canvas id="canvas2d"></canvas>
 | |
|     <canvas id="canvas-webgl"></canvas>
 | |
|     <canvas id="canvas-foo"></canvas>
 | |
|   </div>
 | |
|   <script type="application/javascript">
 | |
|     let chromeDocument = SpecialPowers.wrap(document);
 | |
|     let testElement = document.querySelector("div");
 | |
| 
 | |
|     let anonymousContent = chromeDocument.insertAnonymousContent(testElement);
 | |
| 
 | |
|     is(anonymousContent.getCanvasContext("id", "2d"), null,
 | |
|         "Context is null for non-canvas elements");
 | |
| 
 | |
|     let context2d = anonymousContent.getCanvasContext("canvas2d", "2d");
 | |
| 
 | |
|     is(context2d.toString(), "[object CanvasRenderingContext2D]",
 | |
|         "2D Context is returned properly");
 | |
| 
 | |
|     is(context2d.canvas, null,
 | |
|         "context's canvas property is null in anonymous content");
 | |
| 
 | |
|     is (anonymousContent.getCanvasContext("canvas-foo", "foo"), null,
 | |
|         "Context is null for unknown context type");
 | |
| 
 | |
|     SimpleTest.doesThrow(
 | |
|       () => anonymousContent.getCanvasContext("foo", "2d"),
 | |
|       "NS_ERROR_NOT_AVAILABLE",
 | |
|       "Get a context using unexisting id should throw"
 | |
|     );
 | |
| 
 | |
|     const normalWebGL = document.createElement('canvas').getContext('webgl');
 | |
|     if (normalWebGL) {
 | |
|       let webgl = anonymousContent.getCanvasContext("canvas-webgl", "webgl");
 | |
| 
 | |
|       is(webgl.toString(), "[object WebGLRenderingContext]",
 | |
|           "WebGL Context is returned properly");
 | |
| 
 | |
|       is(webgl.canvas, null,
 | |
|           "WebGL context's canvas property is null in anonymous content");
 | |
|     }
 | |
|     chromeDocument.removeAnonymousContent(anonymousContent);
 | |
|   </script>
 | |
| </body>
 | |
| </html>
 |