Bug 1281418 - Add testcase for changing the src of TrackElement. r=rillian

MozReview-Commit-ID: A7QB9ELEfp3

--HG--
extra : transplant_source : %FE%12%B9%98%847%E2%BF%9E%B8%7D%BDT%E3%7E%F0%90%1E%25i
This commit is contained in:
bechen 2016-07-19 17:01:06 +08:00
Родитель 83707bf2ad
Коммит b13de09ea4
2 изменённых файлов: 57 добавлений и 0 удалений

Просмотреть файл

@ -856,6 +856,8 @@ tags = webvtt
[test_timeupdate_small_files.html] [test_timeupdate_small_files.html]
[test_trackelementevent.html] [test_trackelementevent.html]
tags = webvtt tags = webvtt
[test_trackelementsrc.html]
tags = webvtt
[test_trackevent.html] [test_trackevent.html]
tags = webvtt tags = webvtt
[test_unseekable.html] [test_unseekable.html]

Просмотреть файл

@ -0,0 +1,55 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Test for Bug 1281418 - Change the src attribue for TrackElement.</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.enabled", true],
["media.webvtt.regions.enabled", true]]}, function() {
var video = document.createElement("video");
video.src = "seek.webm";
video.preload = "metadata";
var trackElement = document.createElement("track");
trackElement.src = "basic.vtt";
trackElement.default = true;
document.getElementById("content").appendChild(video);
video.appendChild(trackElement);
video.addEventListener("loadedmetadata", function metadata() {
if (trackElement.readyState <= 1) {
return setTimeout(metadata, 0);
}
is(video.textTracks.length, 1, "Length should be 1.");
is(video.textTracks[0].cues.length, 6, "Cue length should be 6.");
trackElement.src = "sequential.vtt";
trackElement.track.mode = "showing";
video.play();
});
video.addEventListener("ended", function end() {
is(trackElement.readyState, 2, "readyState should be 2.")
is(video.textTracks.length, 1, "Length should be 1.");
is(video.textTracks[0].cues.length, 3, "Cue length should be 3.");
SimpleTest.finish();
});
});
</script>
</pre>
</body>
</html>