forked from mirrors/gecko-dev
		
	
		
			
				
	
	
		
			67 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!--
 | |
|   Any copyright is dedicated to the Public Domain.
 | |
|   http://creativecommons.org/publicdomain/zero/1.0/
 | |
| -->
 | |
| <html>
 | |
| <head>
 | |
|   <title>Promise.resolve(anything) Test</title>
 | |
|   <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
 | |
|   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
 | |
| </head>
 | |
| <body>
 | |
| <p id="display"></p>
 | |
| <div id="content" style="display: none">
 | |
| 
 | |
| </div>
 | |
| <pre id="test">
 | |
| <script type="application/javascript"><!--
 | |
| 
 | |
| var tests = [
 | |
|   null,
 | |
|   42,
 | |
|   "hello world",
 | |
|   true,
 | |
|   false,
 | |
|   {},
 | |
|   { a: 42 },
 | |
|   [ 1, 2, 3, 4, null, true, "hello world" ],
 | |
|   function() {},
 | |
|   window,
 | |
|   undefined,
 | |
|   document.createElement('input'),
 | |
|   new Date(),
 | |
| ];
 | |
| 
 | |
| function cbError() {
 | |
|   ok(false, "Nothing should arrive here!");
 | |
| }
 | |
| 
 | |
| function runTest() {
 | |
|   if (!tests.length) {
 | |
|     SimpleTest.finish();
 | |
|     return;
 | |
|   }
 | |
| 
 | |
|   var test = tests.pop();
 | |
| 
 | |
|   new Promise(function(resolve, reject) {
 | |
|     resolve(test);
 | |
|   }).then(function(what) {
 | |
|     ok(test === what, "What is: " + what);
 | |
|   }, cbError).then(function() {
 | |
|     new Promise(function(resolve, reject) {
 | |
|       reject(test)
 | |
|     }).then(cbError, function(what) {
 | |
|       ok(test === what, "What is: " + what);
 | |
|     }).then(runTest, cbError);
 | |
|   });
 | |
| }
 | |
| 
 | |
| SimpleTest.waitForExplicitFinish();
 | |
| runTest();
 | |
| // -->
 | |
| </script>
 | |
| </pre>
 | |
| </body>
 | |
| </html>
 | |
| 
 | 
