mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-25 22:01:30 +00:00
8efa019f44
Convert this to a plain mochitest so it runs in the client context, and use the SpecialPowers object's wrap() and unwrap() methods to access the privileged parent pointer api. Rename _chrome to _moz to clarify that this is a moz-specific extension, since chrome privilege is ambiguous in the context of e10s. MozReview-Commit-ID: JQVfqjvS55e
67 lines
2.3 KiB
HTML
67 lines
2.3 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=881976
|
|
-->
|
|
<head>
|
|
<meta charset='utf-8'>
|
|
<title>Test for Bug 881976 - TextTrackCue Computed Position</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">
|
|
</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");
|
|
|
|
// Check if adding a text track manually sets the TextTrackList correctly.
|
|
|
|
// HTMLTrackElement.textTrackList is an extension available only to
|
|
// privileged code, so we need to access it through the SpecialPowers
|
|
// object.
|
|
video.addTextTrack("subtitles", "", "");
|
|
is(SpecialPowers.unwrap(SpecialPowers.wrap(video.textTracks[0]).textTrackList),
|
|
video.textTracks,
|
|
"The Track's TextTrackList should be the Video's TextTrackList.");
|
|
|
|
|
|
// Check if loading a Track via a TrackElement sets the TextTrackList correctly.
|
|
video.src = "seek.webm";
|
|
video.preload = "auto";
|
|
|
|
var trackElement = document.createElement("track");
|
|
trackElement.src = "basic.vtt";
|
|
trackElement.kind = "subtitles";
|
|
|
|
video.appendChild(trackElement);
|
|
document.getElementById("content").appendChild(video);
|
|
|
|
video.addEventListener("loadedmetadata", function run_tests() {
|
|
// Re-que run_tests() at the end of the event loop until the track
|
|
// element has loaded its data.
|
|
if (trackElement.readyState == HTMLTrackElement.LOADING) {
|
|
setTimeout(run_tests, 0);
|
|
return;
|
|
}
|
|
is(trackElement.readyState, HTMLTrackElement.LOADED,
|
|
"Track::ReadyState should be set to LOADED.");
|
|
is(SpecialPowers.unwrap(SpecialPowers.wrap(trackElement.track).textTrackList),
|
|
video.textTracks,
|
|
"TrackElement's Track's TextTrackList should be the Video's TextTrackList.");
|
|
|
|
SimpleTest.finish();
|
|
});
|
|
}
|
|
);
|
|
</script>
|
|
</pre>
|
|
</body>
|
|
</html>
|