test.html (4732B)
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8" /> 5 <title>Creating Session - Web Platform Tests</title> 6 <link rel="stylesheet" href="css/bulma-0.7.5/bulma.min.css" /> 7 <link rel="stylesheet" href="css/style.css" /> 8 <link rel="stylesheet" href="css/main.css" /> 9 <script src="lib/wave-service.js"></script> 10 <style> 11 #console { 12 font-family: monospace; 13 } 14 .spinner { 15 height: 0.7em; 16 width: 0.7em; 17 } 18 .fa-pulse { 19 -webkit-animation: fa-spin 1s steps(8) infinite; 20 animation: fa-spin 1s steps(8) infinite; 21 } 22 @-webkit-keyframes fa-spin { 23 0% { 24 -webkit-transform: rotate(0deg); 25 transform: rotate(0deg); 26 } 27 to { 28 -webkit-transform: rotate(1turn); 29 transform: rotate(1turn); 30 } 31 } 32 @keyframes fa-spin { 33 0% { 34 -webkit-transform: rotate(0deg); 35 transform: rotate(0deg); 36 } 37 to { 38 -webkit-transform: rotate(1turn); 39 transform: rotate(1turn); 40 } 41 } 42 </style> 43 </head> 44 <body> 45 <section class="section"> 46 <div class="container"> 47 <img src="res/wavelogo_2016.jpg" alt="WAVE Logo" class="site-logo" /> 48 49 <h1 class="title is-spaced"> 50 <span> 51 <img src="res/spinner-solid.svg" class="spinner fa-pulse" /> 52 </span> 53 Creating Session 54 </h1> 55 <div id="content"> 56 <div id="details-wrapper"> 57 <div class="detail"> 58 <div>Reference Tokens:</div> 59 <div id="reference-tokens"></div> 60 </div> 61 <div class="detail"> 62 <div>Test Paths:</div> 63 <div id="test-path"></div> 64 </div> 65 </div> 66 67 <div id="console"></div> 68 </div> 69 </div> 70 </section> 71 <script> 72 var screenConsole = document.getElementById("console"); 73 var log = function() { 74 var text = ""; 75 for (var i = 0; i < arguments.length; i++) { 76 text += arguments[i] + " "; 77 } 78 text = text.replace(/ /gm, " "); 79 text = text.replace(/\n/gm, "<br/>"); 80 screenConsole.innerHTML += "<br/>" + text; 81 }; 82 83 window.onerror = function(error) { 84 log(error); 85 }; 86 87 var HOSTNAME = location.hostname; 88 var PORT = location.port; 89 var PROTOCOL = location.protocol.replace(/:/, ""); 90 var QUERY = decodeURIComponent(location.search.replace(/\?/, "")); 91 var match = QUERY.match(/token=([^&]+)/); 92 var TOKEN = match ? match[1] : null; 93 QUERY += /[\?&]path=/.test(location.search) ? "" : "&resume=1"; 94 95 var parsedQuery = {}; 96 97 var parts = QUERY.split("&"); 98 for (var i = 0; i < parts.length; i++) { 99 var part = parts[i]; 100 var key = part.split("=")[0]; 101 var value = part.split("=")[1]; 102 parsedQuery[key] = value; 103 } 104 105 var includedTests = []; 106 var paths = parsedQuery["path"].split(","); 107 for (var i = 0; i < paths.length; i++) { 108 var path = paths[i]; 109 includedTests.push(path.trim()); 110 } 111 112 var excludedTests = [ 113 "/html/semantics/scripting-1/the-script-element/module/dynamic-import/no-active-script-manual-classic.html", 114 "/html/semantics/scripting-1/the-script-element/module/dynamic-import/no-active-script-manual-module.html" 115 ]; 116 117 var referenceTokens = []; 118 if (parsedQuery["reftoken"]) { 119 var paths = parsedQuery["reftoken"].split(","); 120 for (var i = 0; i < paths.length; i++) { 121 var path = paths[i]; 122 referenceTokens.push(path.trim()); 123 } 124 } 125 126 var testPath = document.getElementById("test-path"); 127 var paths = includedTests; 128 for (var i = 0; i < paths.length; i++) { 129 var path = paths[i]; 130 testPath.innerText += path + "\n"; 131 } 132 var referenceTokensElement = document.getElementById("reference-tokens"); 133 if (referenceTokens.length === 0) { 134 referenceTokensElement.innerText = "none"; 135 } else { 136 for (var i = 0; i < referenceTokens.length; i++) { 137 var token = referenceTokens[i]; 138 referenceTokensElement.innerText += token + "\n"; 139 } 140 } 141 log("Please wait ..."); 142 WaveService.createSession( 143 { 144 tests: { include: includedTests, exclude: excludedTests }, 145 referenceTokens: referenceTokens 146 }, 147 function(token) { 148 log("Session created successfully! Token: " + token); 149 log("Redirecting ..."); 150 location.href = "/newsession.html?token=" + token; 151 } 152 ); 153 </script> 154 </body> 155 </html>