<!doctype html>
<title>Slow loading WebVTT file interrupted in the middle of a timestamp line</title>
<script src=/media-resources/video-test.js></script>
<script>
function loadAndStall()
{
    return "http://127.0.0.1:8000/resources/load-and-stall.php";
}

function vttTrack()
{
    return "?name=../../../media/track/captions-webvtt/captions-multiline-lf.vtt&mimeType=text%2Fvtt";
}

window.onload = function()
{
    video = document.createElement('video');
    track = document.createElement('track');
    video.appendChild(track);
    track.onload = function() {
        testExpected("track.track.cues.length", 2, "===");
        testExpected("track.track.cues[0].text", 'Lorem\u000aipsum', "===");
        endTest();
    };
    track.onerror = function() {
        failTest();
    };
    track.src = loadAndStall() + vttTrack() + "&stallAt=32&stallFor=1";
    track.track.mode = "hidden";
}
</script>
<p>Slow loading WebVTT file interrupted in the middle of a timestamp line.</p>
