<!doctype html>
<html>
    <head>
        <title>video-page-load-preload-none</title>
        <script src=video-test.js></script>
        <script src=media-file.js></script>
        <script>
            var video;

        </script>
    </head>
    <body>
        <video id="video" preload="none" poster="content/counting.jpg"><source id="source"></video>

        <p>Test the document's load event is not delayed when a movie's preload attribute is "none".</p>

        <script>
            consoleWrite("<br><b>inline script</b>");

            video = document.getElementById('video');
            source = document.getElementById('source');
            source.src = findMediaFile("video", "content/test");

            waitForEventAndFail('stalled');
            waitForEventOn(window, 'load', endTest);
        </script>

    </body>
</html>
