<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

        <script src=../media-file.js></script>
        <script src=../video-test.js></script>
        <script>

            function trackError()
            {
                consoleWrite("EVENT(error)");
                track = document.getElementById('testTrackError'); 
                testExpected("track.readyState", HTMLTrackElement.ERROR);
                endTest();
            }

        </script>
    </head>
    <body>
        <p>Tests the error event on HTMLTrackElement and ERROR readyState on TextTrack.</p>
        <video id="videotests">
            <track id="testTrackError" src="junk" onerror="trackError()" default>
        </video>
    </body>
</html>
