<!DOCTYPE html>
<html>
<head>
    <script src="/js-test-resources/js-test-pre.js"></script>
    <script>
        description('This tests that XMLHttpRequest properly handles mixed case MIME strings.');
        window.jsTestIsAsync = true;

        var xhr = new XMLHttpRequest(),
            url = 'resources/xmlhttprequest-mimetype-mixed-case.php';
        xhr.onload = function() {
            shouldBeNonNull('xhr.responseXML');
            finishJSTest();
        };
        xhr.onerror = function() {
            testFailed('The XHR request to an existing resource failed: "' + url + '"');
            finishJSTest();
        };
        xhr.open('GET', url);
        xhr.responseType = 'document';
        xhr.send(null);
    </script>
    <script src="/js-test-resources/js-test-post.js"></script>
</head>
<body>
    <div id="description"></div>
    <div id="console"></div>
</body>
</html>
