64 lines
2 KiB
HTML
64 lines
2 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=1250148
|
|
-->
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Test for Bug 1250148 - FormData and HTML submission compatibility</title>
|
|
<script src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
|
</head>
|
|
<body>
|
|
<form id="form" enctype="multipart/form-data"><input type="file" name="test" /></form>
|
|
<script type="application/javascript">
|
|
|
|
SimpleTest.waitForExplicitFinish();
|
|
|
|
var f = document.getElementById('form');
|
|
var fd = new FormData(f);
|
|
var get = fd.get("test");
|
|
ok(get instanceof File, "We want a File object.");
|
|
is(get.name, "", "We want a File with an empty name.");
|
|
is(
|
|
get.type,
|
|
"application/octet-stream",
|
|
"We want a File with type application/octet-stream."
|
|
);
|
|
is(get.size, 0, "We want a File with an empty body.");
|
|
|
|
var getAll = fd.getAll("test");
|
|
ok(Array.isArray(getAll), "We want an array with 1 empty File.");
|
|
is(getAll.length, 1, "We want an array with 1 empty File.");
|
|
is(
|
|
getAll[0],
|
|
get,
|
|
"We want the File returned from getAll to be that returned from get."
|
|
);
|
|
|
|
var xhr = new XMLHttpRequest();
|
|
xhr.open("POST", "file_bug1250148.sjs", true);
|
|
xhr.onload = function() {
|
|
var obj = JSON.parse(xhr.responseText);
|
|
|
|
ok(Array.isArray(obj), "XHR response is an array.");
|
|
is(obj.length, 1, "XHR response array contains 1 result.");
|
|
|
|
ok("headers" in obj[0], "XHR response has an header value");
|
|
|
|
ok("Content-Disposition" in obj[0].headers, "XHR response.headers array has a Content-Desposition value");
|
|
is(obj[0].headers["Content-Disposition"], "form-data; name=\"test\"; filename=\"\"", "Correct Content-Disposition");
|
|
|
|
ok("Content-Type" in obj[0].headers, "XHR response.headers array has a Content-Type value");
|
|
is(obj[0].headers["Content-Type"], "application/octet-stream", "Correct Content-Type");
|
|
|
|
ok("body" in obj[0], "XHR response has a body value");
|
|
is(obj[0].body, "", "Correct body value");
|
|
|
|
SimpleTest.finish();
|
|
}
|
|
xhr.send(fd);
|
|
|
|
</script>
|
|
</body>
|
|
</html>
|