Tue, 06 Jan 2015 21:39:09 +0100
Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
1 <!DOCTYPE HTML>
2 <html>
3 <head>
4 <title>Test for Bug 882677 - Implement the 'sourcing out of band text tracks' algorithm</title>
5 <script type="text/javascript" src="/MochiKit/MochiKit.js"></script>
6 <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
7 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
8 </head>
9 <body>
10 <p id="display"></p>
11 <div id="content" style="display: none">
12 </div>
13 <pre id="test">
14 <script class="testbody" type="text/javascript">
15 SimpleTest.waitForExplicitFinish();
16 SpecialPowers.pushPrefEnv({"set": [["media.webvtt.enabled", true],
17 ["media.webvtt.regions.enabled", true]]},
18 function() {
19 var video = document.createElement("video");
20 video.src = "seek.webm";
21 video.preload = "auto";
23 var trackOne = document.createElement("track");
24 trackOne.src = "basic.vtt";
25 trackOne.kind = "subtitles";
27 var trackTwo = document.createElement("track");
28 trackTwo.src = "bad-signature.vtt";
29 trackTwo.kind = "captions";
31 var trackThree = document.createElement("track");
32 trackThree.src = "bad.vtt";
33 trackThree.kind = "chapters";
35 var events = 0;
36 function countEvent() {
37 ok(true, "A loaded or error event should have happened.");
38 events++ && events == 3 && SimpleTest.finish();
39 }
41 function shouldNotBeCalled() {
42 ok(false, "Event should not have been called.");
43 }
45 trackOne.addEventListener("loaded", countEvent);
46 trackOne.addEventListener("error", shouldNotBeCalled)
47 trackTwo.addEventListener("loaded", shouldNotBeCalled);
48 trackTwo.addEventListener("error", countEvent);
49 trackThree.addEventListener("loaded", shouldNotBeCalled);
50 trackThree.addEventListener("error", countEvent);
52 document.getElementById("content").appendChild(video);
53 video.appendChild(trackOne);
54 video.appendChild(trackTwo);
55 video.appendChild(trackThree);
56 }
57 );
58 </script>
59 </pre>
60 </body>
61 </html>