Fri, 16 Jan 2015 04:50:19 +0100
Replace accessor implementation with direct member state manipulation, by
request https://trac.torproject.org/projects/tor/ticket/9701#comment:32
1 <!DOCTYPE HTML>
2 <html>
3 <head>
4 <title>Media test: networkState</title>
5 <script type="text/javascript" src="/MochiKit/Base.js"></script>
6 <script type="text/javascript" src="/MochiKit/DOM.js"></script>
7 <script type="text/javascript" src="/MochiKit/Style.js"></script>
8 <script type="text/javascript" src="/MochiKit/Signal.js"></script>
9 <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
10 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
11 <script type="text/javascript" src="manifest.js"></script>
12 </head>
13 <body onunload="mediaTestCleanup();">
14 <video id='v1'></video><audio id='a1'></audio>
15 <pre id="test">
16 <script class="testbody" type="text/javascript">
17 "use strict";
18 var v1 = document.getElementById('v1');
19 var a1 = document.getElementById('a1');
20 var passed = "truthy";
22 try {
23 v1.networkState = 0;
24 } catch (e) {
25 passed = !passed;
26 }
27 try {
28 a1.networkState = 0;
29 } catch (e) {
30 passed = !passed;
31 }
32 ok(passed === true,
33 "Setting networkState throws in strict mode (readonly attribute)");
34 </script>
36 <script class="testbody" type="text/javascript">
37 var v1 = document.getElementById('v1');
38 var a1 = document.getElementById('a1');
39 var passed = false;
41 var oldv1ns = v1.networkState, olda1ns = a1.networkState;
42 try {
43 v1.networkState = 0;
44 a1.networkState = 0;
45 passed = v1.networkState === oldv1ns && a1.networkState === olda1ns;
46 } catch (e) { }
47 ok(passed, "Should not be able to modify networkState (readonly attribute)");
48 </script>
49 </pre>
50 </body>
51 </html>