3 <title>Test of 'played' attribute</title>
4 <script src=media-file.js></script>
5 <script src=video-test.js></script>
6 <script src=video-played.js></script>
13 JumpAndCollapseTwoRanges,
14 TestLoopingAndPassToTheEnd
17 // NOTE: Result details are not printed for this test because time values are different from machine
18 // to machine and run to run. Commenting out the following line turns on detailed logging back on, which
19 // can be useful for debugging test failure.
20 disableFullTestDetailsPrinting();
22 function PlayWithNoRanges()
24 consoleWrite("<br><b><em>Test playing when there are no ranges</em></b>");
26 willPauseInExistingRange = false;
27 willExtendAnExistingRange = false;
28 timeRangeCount = currentTimeRange = 0;
30 runSilently("video.currentTime = 0.5");
33 startPlayingInNewRange();
37 function CreateANewRange()
39 consoleWrite("<br><b><em>Create a new range</em></b>");
41 var newTime = (video.played.end(0) + 0.05).toFixed(2);
42 runSilently("video.currentTime = " + newTime);
44 willPauseInExistingRange = false;
45 willExtendAnExistingRange = false;
47 startPlayingInNewRange();
50 function JumpAndCollapseTwoRanges()
52 consoleWrite("<br><b><em>Test playing from one range into another, should collapse the two ranges</em></b>");
55 currentTimeRange = timeRangeCount - 1;
56 var startTime = expectedStartTimes[0] - 0.1;
57 expectedStartTimes[0] = startTime;
58 expectedEndTimes[0] = expectedEndTimes[1];
60 willPauseInExistingRange = false;
61 willExtendAnExistingRange = false;
62 runSilently("video.currentTime = " + startTime);
64 playForMillisecs(secToMilli(expectedEndTimes[1] - startTime + 0.1)); // Triggers pause()
67 function TestLoopingAndPassToTheEnd()
69 playForMillisecs(100); // Triggers pause()
71 consoleWrite("<br><b><em>Test looping</em></b>");
73 var newTime = (video.duration - 0.05).toFixed(2);
74 runSilently("video.currentTime = " + newTime);
75 run("video.loop = true");
77 currentTimeRange = 0; // We'll end in the very first time range
80 expectedStartTimes[timeRangeCount-1] = newTime;
81 expectedEndTimes[timeRangeCount-1] = video.duration.toFixed(2);
83 willPauseInExistingRange = true;
84 willExtendAnExistingRange = true;
86 playForMillisecs(100); // Triggers pause()
92 <body onload="videoPlayedMain()">
94 <video controls></video>
95 <p>Test of the media element 'played' attribute</p>