content/media/test/test_load_candidates.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 <!--
     4 https://bugzilla.mozilla.org/show_bug.cgi?id=465458
     5 -->
     6 <head>
     7   <title>Test for Bug 465458</title>
     8   <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
     9   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
    10   <script type="text/javascript" src="manifest.js"></script>
    11 </head>
    12 <body>
    13 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=465458">Mozilla Bug 465458</a>
    14 <p id="display"></p>
    15 <div id="content" style="display: none">
    17 </div>
    18 <pre id="test">
    19 <script type="application/javascript">
    21 /** Test for Bug 465458 **/
    23 var manager = new MediaTestManager;
    25 function finish(evt) {
    26   var v = evt.target;
    27   is(v._error, 2, "Should have received 2 error events before loaded");
    28   v._finished = true;
    29   // remove error event handler, because this would otherwise
    30   // cause a failure on Windows 7, see bug 1024535
    31   v.onerror = null;
    32   v.parentNode.removeChild(v);
    33   manager.finished(v.token);
    34 }
    36 function errorHandler(evt) {
    37   evt.target.parentNode._error++;
    38 }
    40 var extension = {
    41   "audio/wav" : "wav",
    42   "audio/x-wav": "wav",
    43   "video/ogg" : "ogv",
    44   "audio/ogg" : "oga",
    45   "video/webm" : "webm"
    46 };
    48 function startTest(test, token) {
    49   var v = document.createElement('video');
    50   v.preload = "auto";
    51   v.onerror = function(){ok(false,"Error events on source children should not bubble");}
    52   v.token = token;
    53   manager.started(token);
    54   v._error = 0;
    55   v._finished = false;
    56   v._name = test.name;
    58   var s1 = document.createElement("source");
    59   s1.type = test.type;
    60   s1.src = "404." + extension[test.type];
    61   s1.addEventListener("error", errorHandler, false);
    62   v.appendChild(s1);
    64   var s2 = document.createElement("source");
    65   s2.type = test.type;
    66   s2.src = "test_load_candidates.html"; // definitely an invalid media file, regardless of its actual mime type...
    67   s2.addEventListener("error", errorHandler, false);
    68   v.appendChild(s2);
    70   var s3 = document.createElement("source");
    71   s3.type = test.type;
    72   s3.src = test.name;
    73   v.appendChild(s3);
    75   v.addEventListener("loadeddata", finish, false);
    76   document.body.appendChild(v);
    77 }
    79 manager.runTests(gSmallTests, startTest);
    81 </script>
    82 </pre>
    83 </body>
    84 </html>

mercurial