content/media/test/test_autoplay_contentEditable.html

Thu, 15 Jan 2015 21:03:48 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 21:03:48 +0100
branch
TOR_BUG_9701
changeset 11
deefc01c0e14
permissions
-rw-r--r--

Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)

     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4   <title>Media test: play() method</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 contenteditable="true">
    10 <pre id="test">
    12 <script>
    14 var manager = new MediaTestManager;
    16 var tokens = {
    17   0:                ["canplay"],
    18   "canplay":        ["canplay", "canplaythrough"],
    19   "canplaythrough": ["canplay", "canplaythrough"]
    20 };
    22 function gotPlayEvent(event) {
    23   var v = event.target;
    24   ok(tokens[v._state].indexOf(event.type) >= 0,
    25      "Check expected event got " + event.type + " at " + v._state + " for " + v.src +
    26      " uneval(event.type)=" + uneval(event.type) + " typeof(event.type)=" + typeof(event.type) +
    27      " uneval(v._state)=" + uneval(v._state) + " typeof(v._state)=" + typeof(v._state) + 
    28      " tokens["+v._state+"]=" + tokens[v._state] +
    29      " tokens["+v._state+"].indexOf(event.type)=" + tokens[v._state].indexOf(event.type));
    30   v._state = event.type;
    31 }
    33 function goToNext(v) {
    34   v.parentNode.removeChild(v);
    35   manager.finished(v.token);
    36 }
    38 function initTest(test, token) {
    39   var v = document.createElement('video');
    40   v.preload = "metadata";
    41   v.token = token;
    42   manager.started(token);
    43   v._state = 0;
    45   ["play", "canplay", "playing", "canplaythrough", "ended"].forEach(function (e) {
    46     v.addEventListener(e, gotPlayEvent, false);
    47   });
    49   setTimeout(function() goToNext(v), 500);
    51   v.src = test.name;
    52   v.autoplay = true;
    53   document.body.appendChild(v); // Causes load.
    54 }
    56 manager.runTests(gSmallTests, initTest);
    58 </script>
    59 </pre>
    60 </body>
    61 </html>

mercurial