1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/dom/base/test/test_e4x_for_each.html Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,55 @@ 1.4 +<!DOCTYPE html> 1.5 +<html> 1.6 +<head><meta charset=utf-8> 1.7 + <title>Test for E4X "for each" syntax</title> 1.8 + <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> 1.9 + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> 1.10 +</head> 1.11 +<body> 1.12 +<p id="display"></p> 1.13 +<div id="content" style="display: none"> 1.14 + 1.15 +</div> 1.16 +<div id="template" style="display: none"> 1.17 +function runTest(i) { 1.18 + var t = tests[i]; 1.19 + count++; 1.20 + try { 1.21 + Function("for each (var a in []) {}"); 1.22 + ok(t.enabled, "JavaScript" + ("version" in t ? " " + t.version : "") + " supports for-each-in"); 1.23 + } catch (e) { 1.24 + ok(!t.enabled, "JavaScript" + ("version" in t ? " " + t.version : "") + " does NOT support for-each-in"); 1.25 + } 1.26 +} 1.27 +</div> 1.28 +<pre id="test"> 1.29 +<script class="testbody"> 1.30 + 1.31 +var tests = [ 1.32 + {enabled: false}, 1.33 + {version: "1.0", enabled: false}, 1.34 + {version: "1.1", enabled: false}, 1.35 + {version: "1.2", enabled: false}, 1.36 + {version: "1.3", enabled: false}, 1.37 + {version: "1.4", enabled: false}, 1.38 + {version: "1.5", enabled: false}, 1.39 + {version: "1.6", enabled: true}, 1.40 + {version: "1.7", enabled: true}, 1.41 + {version: "1.8", enabled: true}, 1.42 +]; 1.43 + 1.44 +var count = 0; 1.45 +for (var i = 0; i < tests.length; i++) { 1.46 + var t = tests[i]; 1.47 + var script = document.createElement("script"); 1.48 + script.type = "application/javascript" + ("version" in t ? ";version=" + t.version : ""); 1.49 + script.textContent = document.getElementById("template").textContent + "\n" + "runTest(" + i + ");"; 1.50 + document.body.appendChild(script); 1.51 +} 1.52 +script = document.createElement("script"); 1.53 +script.textContent = 'is(count, tests.length, "runTest() call count");'; 1.54 +document.body.appendChild(script); 1.55 +</script> 1.56 +</pre> 1.57 +</body> 1.58 +</html>