<!DOCTYPE HTML> <html> <head> <title>Test for Bug 882677 - Implement the 'sourcing out of band text tracks' algorithm</title> <script type="text/javascript" src="/MochiKit/MochiKit.js"></script> <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> </head> <body> <p id="display"></p> <div id="content" style="display: none"> </div> <pre id="test"> <script class="testbody" type="text/javascript"> SimpleTest.waitForExplicitFinish(); SpecialPowers.pushPrefEnv({"set": [["media.webvtt.regions.enabled", true]]}, function() { var video = document.createElement("video"); video.src = "seek.webm"; video.preload = "auto"; var trackOne = document.createElement("track"); trackOne.src = "basic.vtt"; trackOne.kind = "subtitles"; var trackTwo = document.createElement("track"); trackTwo.src = "bad-signature.vtt"; trackTwo.kind = "captions"; var trackThree = document.createElement("track"); trackThree.src = "bad.vtt"; trackThree.kind = "chapters"; var events = 0; function trackOneEvent() { ok(true, "A load event for trackOne should have happened."); events++ && events == 3 && SimpleTest.finish(); } function trackTwoEvent() { ok(true, "An error event for trackTwo should have happened."); events++ && events == 3 && SimpleTest.finish(); } function trackThreeEvent() { ok(true, "An error event for trackThree should have happened."); events++ && events == 3 && SimpleTest.finish(); } function shouldNotBeCalled() { ok(false, "Event should not have been called."); } trackOne.addEventListener("load", trackOneEvent); trackOne.addEventListener("error", shouldNotBeCalled) trackTwo.addEventListener("load", shouldNotBeCalled); trackTwo.addEventListener("error", trackTwoEvent); trackThree.addEventListener("load", shouldNotBeCalled); trackThree.addEventListener("error", trackThreeEvent); document.getElementById("content").appendChild(video); video.appendChild(trackOne); video.appendChild(trackTwo); video.appendChild(trackThree); } ); </script> </pre> </body> </html>