<body>
<script src=media-file.js></script>
<script src=video-test.js></script>
<script>
    waitForEvent('loadstart', function () { 
        video = mediaElement = document.getElementsByTagName('video')[0];
        testExpected("stripExtension(relativeURL(video.currentSrc))", stripExtension(findMediaFile("video", "content/test")));
        endTest();
    } );
</script>
<video controls>
    <source src=content/bogus.mpeg type="video/blahblah">
    <source src=content/test.mp4 type="video/mpeg; codecs=&quot;avc1.4D400C&quot;">
    <source src=content/test.ogv type="video/ogg; codecs=&quot;theora,vorbis&quot;">
    <source src=content/error2.mpeg type=video/mpeg>
</video>
