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

        var xhr = new XMLHttpRequest(),
            url = 'resources/load-icon.xhtml';
        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.overrideMimeType('Application/Xhtml+Xml');
        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>
