88 lines
3.0 KiB
HTML
88 lines
3.0 KiB
HTML
<html>
|
|
<head>
|
|
<title>Test of 'played' attribute</title>
|
|
<script src=media-file.js></script>
|
|
<script src=video-test.js></script>
|
|
<script src=video-played.js></script>
|
|
<script>
|
|
|
|
var testFunctions =
|
|
[
|
|
PlayWithNoRanges,
|
|
ResetToAVideoSource,
|
|
JumpAndPlayFwd,
|
|
ResetToAnEmptyVideoSource
|
|
];
|
|
|
|
// NOTE: Result details are not printed for this test because time values are different from machine
|
|
// to machine and run to run. Commenting out the following line turns on detailed logging back on, which
|
|
// can be useful for debugging test failure.
|
|
disableFullTestDetailsPrinting();
|
|
|
|
function PlayWithNoRanges()
|
|
{
|
|
consoleWrite("<br><b><em>Test playing when there are no ranges</em></b>");
|
|
|
|
timeRangeCount = currentTimeRange = 0;
|
|
willPauseInExistingRange = false;
|
|
willExtendAnExistingRange = false;
|
|
|
|
startPlayingInNewRange();
|
|
}
|
|
|
|
function ResetToAVideoSource()
|
|
{
|
|
consoleWrite("<br><b><em>Test to reset to non empty video source</em></b>");
|
|
|
|
timeRangeCount = currentTimeRange = 0;
|
|
expectedStartTimes = new Array();
|
|
expectedEndTimes = new Array();
|
|
|
|
willPauseInExistingRange = false;
|
|
willExtendAnExistingRange = false;
|
|
|
|
var mediaFile = findMediaFile("video", "content/test");
|
|
runSilently("video.src = \"" + mediaFile + "\"");
|
|
run("video.load()"); // Triggers canplay()
|
|
}
|
|
|
|
function JumpAndPlayFwd()
|
|
{
|
|
consoleWrite("<br><b><em>Test jumping forward into a new range and play</em></b>");
|
|
|
|
var newTime = video.duration - 0.5;
|
|
runSilently("video.currentTime = " + (newTime.toFixed(2)));
|
|
|
|
willPauseInExistingRange = false;
|
|
willExtendAnExistingRange = false;
|
|
currentTimeRange = 1;
|
|
|
|
startPlayingInNewRange();
|
|
}
|
|
|
|
function ResetToAnEmptyVideoSource()
|
|
{
|
|
consoleWrite("<br><b><em>Test to reset to an empty video source</em></b>");
|
|
|
|
willPauseInExistingRange = false;
|
|
willExtendAnExistingRange = false;
|
|
timeRangeCount = currentTimeRange = 0;
|
|
|
|
expectedStartTimes = new Array();
|
|
expectedEndTimes = new Array();
|
|
|
|
run("video.src = \"\"");
|
|
waitForEvent("loadstart", function () { testRanges(); nextTest(); });
|
|
run("video.load()"); // Triggers loadstart()
|
|
}
|
|
</script>
|
|
</head>
|
|
|
|
<body onload="videoPlayedMain()">
|
|
|
|
<video controls></video>
|
|
<p>Test of the media element 'played' attribute</p>
|
|
|
|
</body>
|
|
</html>
|