<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../../../../resources/js-test-pre.js"></script>
</head>
<body>
<p id="description"></p>
<div id="console"></div>
<script src="resources/send-form-data-common.js"></script>
<script>
    function addXHREventHandlers(xhr, file) {
        xhr.onreadystatechange = function(event) {
            if (xhr.readyState == xhr.DONE) {
                window.xhr = xhr;
                shouldBe("xhr.responseText", "'file1=file.invalid:application/octet-stream:1234567890'");
                finishJSTest();
            }
        }
    }
    
    testSendingFormData([{'type': 'file', 'name': 'file1', 'value': '../resources/file.invalid'}], true, addXHREventHandlers);
    var jsTestIsAsync = true;
</script>
<script src="../../../../resources/js-test-post.js"></script>
</body>
</html>
