diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /testing/web-platform/tests/XMLHttpRequest/FormData-append.html | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'testing/web-platform/tests/XMLHttpRequest/FormData-append.html')
-rw-r--r-- | testing/web-platform/tests/XMLHttpRequest/FormData-append.html | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/testing/web-platform/tests/XMLHttpRequest/FormData-append.html b/testing/web-platform/tests/XMLHttpRequest/FormData-append.html new file mode 100644 index 000000000..bf6c66d0f --- /dev/null +++ b/testing/web-platform/tests/XMLHttpRequest/FormData-append.html @@ -0,0 +1,99 @@ +<!doctype html> +<meta charset="utf-8"> +<title>FormData.append</title> +<link rel="help" href="https://xhr.spec.whatwg.org/#dom-formdata-append"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<form id="form" /> +<script> + function test_formdata(creator, verifier, description) { + async_test(description).step(function() { + var fd = creator(); + var xhr = new XMLHttpRequest(); + xhr.onload = this.step_func(function() { + verifier(xhr.responseText); + this.done(); + }); + xhr.open("POST", "resources/upload.py"); + xhr.send(fd); + }); + } + + test_formdata(function() { + var fd = new FormData(); + fd.append("name", new String("value")); + return fd; + }, function(data) { + assert_equals(data, "name=value,\n"); + }, "Passing a String object to FormData.append should work."); + + test(function() { + assert_equals(create_formdata(['key', 'value1']).get('key'), "value1"); + }, 'testFormDataAppend1'); + test(function() { + assert_equals(create_formdata(['key', 'value2'], ['key', 'value1']).get('key'), "value2"); + }, 'testFormDataAppend2'); + test(function() { + assert_equals(create_formdata(['key', undefined]).get('key'), "undefined"); + }, 'testFormDataAppendUndefined1'); + test(function() { + assert_equals(create_formdata(['key', undefined], ['key', 'value1']).get('key'), "undefined"); + }, 'testFormDataAppendUndefined2'); + test(function() { + assert_equals(create_formdata(['key', null]).get('key'), "null"); + }, 'testFormDataAppendNull1'); + test(function() { + assert_equals(create_formdata(['key', null], ['key', 'value1']).get('key'), "null"); + }, 'testFormDataAppendNull2'); + test(function() { + var fd = new FormData(document.getElementById("form")); + fd.append('key', 'value1'); + assert_equals(fd.get('key'), "value1"); + }, 'testFormDataAppendToForm1'); + test(function() { + var fd = new FormData(document.getElementById("form")); + fd.append('key', 'value2'); + fd.append('key', 'value1'); + assert_equals(fd.get('key'), "value2"); + }, 'testFormDataAppendToForm2'); + test(function() { + var fd = new FormData(document.getElementById("form")); + fd.append('key', undefined); + assert_equals(fd.get('key'), "undefined"); + }, 'testFormDataAppendToFormUndefined1'); + test(function() { + var fd = new FormData(document.getElementById("form")); + fd.append('key', undefined); + fd.append('key', 'value1'); + assert_equals(fd.get('key'), "undefined"); + }, 'testFormDataAppendToFormUndefined2'); + test(function() { + var fd = new FormData(document.getElementById("form")); + fd.append('key', null); + assert_equals(fd.get('key'), "null"); + }, 'testFormDataAppendToFormNull1'); + test(function() { + var fd = new FormData(document.getElementById("form")); + fd.append('key', null); + fd.append('key', 'value1'); + assert_equals(fd.get('key'), "null"); + }, 'testFormDataAppendToFormNull2'); + test(function() { + var before = new Date(new Date().getTime() - 2000); // two seconds ago, in case there's clock drift + var fd = create_formdata(['key', new Blob(), 'blank.txt']).get('key'); + assert_equals(fd.name, "blank.txt"); + assert_equals(fd.type, ""); + assert_equals(fd.size, 0); + assert_greater_than_equal(fd.lastModified, before); + assert_less_than_equal(fd.lastModified, new Date()); + }, 'testFormDataAppendEmptyBlob'); + + function create_formdata() { + var fd = new FormData(); + for (var i = 0; i < arguments.length; i++) { + fd.append.apply(fd, arguments[i]); + }; + return fd; + } +</script> |