diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
commit | 43a97878ce14b72f0981164f87f2e35e14151312 (patch) | |
tree | 620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/xhr/formdata/set-blob.any.js | |
parent | Initial commit. (diff) | |
download | firefox-upstream.tar.xz firefox-upstream.zip |
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/xhr/formdata/set-blob.any.js')
-rw-r--r-- | testing/web-platform/tests/xhr/formdata/set-blob.any.js | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/testing/web-platform/tests/xhr/formdata/set-blob.any.js b/testing/web-platform/tests/xhr/formdata/set-blob.any.js new file mode 100644 index 0000000000..01946faeab --- /dev/null +++ b/testing/web-platform/tests/xhr/formdata/set-blob.any.js @@ -0,0 +1,61 @@ +// META: title=formData.set(blob) and formData.set(file) + +"use strict"; + +const formData = new FormData(); + +test(() => { + const value = new Blob(); + formData.set("blob-1", value); + const blob1 = formData.get("blob-1"); + assert_not_equals(blob1, value); + assert_equals(blob1.constructor.name, "File"); + assert_equals(blob1.name, "blob"); + assert_equals(blob1.type, ""); + assert_equals(formData.get("blob-1") === formData.get("blob-1"), true, "should return the same value when get the same blob entry from FormData"); + assert_less_than(Math.abs(blob1.lastModified - Date.now()), 200, "lastModified should be now"); +}, "blob without type"); + +test(() => { + const value = new Blob([], { type: "text/plain" }); + formData.set("blob-2", value); + const blob2 = formData.get("blob-2"); + assert_not_equals(blob2, value); + assert_equals(blob2.constructor.name, "File"); + assert_equals(blob2.name, "blob"); + assert_equals(blob2.type, "text/plain"); + assert_less_than(Math.abs(blob2.lastModified - Date.now()), 200, "lastModified should be now"); +}, "blob with type"); + +test(() => { + const value = new Blob(); + formData.set("blob-3", value, "custom name"); + const blob3 = formData.get("blob-3"); + assert_not_equals(blob3, value); + assert_equals(blob3.constructor.name, "File"); + assert_equals(blob3.name, "custom name"); + assert_equals(blob3.type, ""); + assert_less_than(Math.abs(blob3.lastModified - Date.now()), 200, "lastModified should be now"); +}, "blob with custom name"); + +test(() => { + const value = new File([], "name"); + formData.set("file-1", value); + const file1 = formData.get("file-1"); + assert_equals(file1, value); + assert_equals(file1.constructor.name, "File"); + assert_equals(file1.name, "name"); + assert_equals(file1.type, ""); + assert_less_than(Math.abs(file1.lastModified - Date.now()), 200, "lastModified should be now"); +}, "file without lastModified or custom name"); + +test(() => { + const value = new File([], "name", { lastModified: 123 }); + formData.set("file-2", value, "custom name"); + const file2 = formData.get("file-2"); + assert_not_equals(file2, value); + assert_equals(file2.constructor.name, "File"); + assert_equals(file2.name, "custom name"); + assert_equals(file2.type, ""); + assert_equals(file2.lastModified, 123, "lastModified should be 123"); +}, "file with lastModified and custom name"); |