content/media/test/test_progress.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>Media test: progress events</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>
    10 <pre id="test">
    11 <script class="testbody" type="text/javascript">
    13 var manager = new MediaTestManager;
    15 function do_progress(e) {
    16   var v = e.target;
    17   ok(!v._finished, "Check no progress events after completed for " + v._name);
    18 }
    20 function do_ended(e) {
    21   var v = e.target;
    22   ok(!v._finished, "Only one ended event for " + v._name);
    23   v._finished = true;
    24   v.removeEventListener("ended", do_ended, false);
    25   v.removeEventListener("progress", do_progress, false);
    26   removeNodeAndSource(v);
    27   manager.finished(v.token);
    28 }
    30 function startTest(test, token) {
    31   var type = /^video/.test(test.type) ? "video" : "audio";
    32   var v = document.createElement(type);
    33   v.token = token;
    34   manager.started(token);
    35   v.src = test.name;
    36   v.autoplay = true;
    37   v._name = test.name;
    38   v._finished = false;
    39   v.addEventListener("ended", do_ended, false);
    40   v.addEventListener("progress", do_progress, false);
    41   document.body.appendChild(v);
    42 }
    44 SimpleTest.waitForExplicitFinish();
    45 SpecialPowers.pushPrefEnv({"set": [["media.cache_size", 40000]]}, beginTest);
    46 function beginTest() {
    47   manager.runTests(gProgressTests, startTest);
    48 }
    49 </script>
    50 </pre>
    51 </body>
    52 </html>

mercurial