<video controls></video>
<p>Test that multiple seeks issued at the same time will result in only a single 'seeked' event.
 </p>
<script src=media-file.js></script>
<script src=video-test.js></script>
<script>

    function seeked()
    { 
        consoleWrite("");

        testExpected("video.seeking", false);
        testExpected("video.currentTime", 2);

        waitForEventAndFail('seeked');
        setTimeout(endTest, 0.1);
     }

    function canplaythrough() 
    {
        run("video.currentTime = 0.5");
        run("video.currentTime = 1.5");
        run("video.currentTime = 2.0");
        testExpected("video.seeking", true);
        consoleWrite("");
    }
    
    waitForEvent('waiting' );
    waitForEventOnce('seeked', seeked );
    waitForEvent('canplaythrough', canplaythrough);

    video.src = findMediaFile("video", "content/test");
</script>
