content/media/test/test_reactivate.html

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

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 reactivation of a media element from a dead document</title>
     5   <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
     6   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
     7   <script type="text/javascript" src="manifest.js"></script>
     8 </head>
     9 <body>
    11 <iframe id="frame" src="reactivate_helper.html"></iframe>
    13 <pre id="test">
    14 <script class="testbody" type="text/javascript">
    16 var testsWaiting;
    17 var elements;
    19 function didPlay(event) {
    20   ok(true, "Element ended: " + event.target.currentSrc);
    22   removeNodeAndSource(event.target);
    24   --testsWaiting;
    25   if (testsWaiting == 0) {
    26     SimpleTest.finish();
    27   }
    28 }
    30 function reviveElements() {
    31   // reactivate the elements by moving them to our document
    32   for (var i = 0; i < elements.length; ++i) {
    33     document.body.appendChild(elements[i]);
    34     elements[i].addEventListener("ended", didPlay, false);
    35   }
    37   testsWaiting = elements.length;
    38 }
    40 function loadedAll(elementList) {
    41   elements = elementList;
    43   // Blow away the subframe
    44   document.body.removeChild(document.getElementById("frame"));
    46   // Start the elements playing.
    47   for (var i = 0; i < elements.length; ++i) {
    48     elements[i].play();
    49   }
    51   setTimeout(reviveElements, 2000);
    52 }
    53 </script>
    54 </pre>
    55 </body>
    56 </html>

mercurial