Branch data Line data Source code
1 [ + ]: 1 : import assert from 'node:assert/strict';
2 : 1 : import { FormData } from '../../../../lib/whatwg-xhr.js';
3 : 1 :
4 [ + ]: 1 : export default (activeURL) => {
5 : 1 :
6 : 1 : assert.strictEqual(create_formdata(['key', 'value1']).get('key'), 'value1');
7 : 1 : assert.strictEqual(create_formdata(['key', 'value2'], ['key', 'value1']).get('key'), 'value2');
8 : 1 : assert.strictEqual(create_formdata(['key', undefined]).get('key'), 'undefined');
9 : 1 : assert.strictEqual(create_formdata(['key', undefined], ['key', 'value1']).get('key'), 'undefined');
10 : 1 : assert.strictEqual(create_formdata(['key', null]).get('key'), 'null');
11 : 1 : assert.strictEqual(create_formdata(['key', null], ['key', 'value1']).get('key'), 'null');
12 : 1 :
13 : 1 : let before = new Date(new Date().getTime() - 2000); // two seconds ago, in case there's clock drift
14 : 1 : let fd = create_formdata(['key', new Blob(), 'blank.txt']).get('key');
15 : 1 :
16 : 1 : assert.strictEqual(fd.name, "blank.txt");
17 : 1 : assert.strictEqual(fd.type, "");
18 : 1 : assert.strictEqual(fd.size, 0);
19 : 1 :
20 : 1 : assert(fd.lastModified >= before);
21 : 1 : assert(fd.lastModified <= new Date());
22 : 1 :
23 [ + ]: 1 : function create_formdata() {
24 : 7 : const fd = new FormData();
25 : 7 :
26 [ + ]: 7 : for(let i = 0; i < arguments.length; i++){
27 : 10 : fd.append.apply(fd, arguments[i]);
28 : 7 : };
29 : 7 :
30 : 7 : return fd;
31 : 7 : }
32 : 1 : }
33 : 1 :
34 : 1 : /*
35 : 1 : * append.any.js
36 : 1 : *
37 : 1 :
38 : 1 : // META: title=FormData.append
39 : 1 :
40 : 1 : test(function() {
41 : 1 : assert_equals(create_formdata(['key', 'value1']).get('key'), "value1");
42 : 1 : }, 'testFormDataAppend1');
43 : 1 : test(function() {
44 : 1 : assert_equals(create_formdata(['key', 'value2'], ['key', 'value1']).get('key'), "value2");
45 : 1 : }, 'testFormDataAppend2');
46 : 1 : test(function() {
47 : 1 : assert_equals(create_formdata(['key', undefined]).get('key'), "undefined");
48 : 1 : }, 'testFormDataAppendUndefined1');
49 : 1 : test(function() {
50 : 1 : assert_equals(create_formdata(['key', undefined], ['key', 'value1']).get('key'), "undefined");
51 : 1 : }, 'testFormDataAppendUndefined2');
52 : 1 : test(function() {
53 : 1 : assert_equals(create_formdata(['key', null]).get('key'), "null");
54 : 1 : }, 'testFormDataAppendNull1');
55 : 1 : test(function() {
56 : 1 : assert_equals(create_formdata(['key', null], ['key', 'value1']).get('key'), "null");
57 : 1 : }, 'testFormDataAppendNull2');
58 : 1 : test(function() {
59 : 1 : var before = new Date(new Date().getTime() - 2000); // two seconds ago, in case there's clock drift
60 : 1 : var fd = create_formdata(['key', new Blob(), 'blank.txt']).get('key');
61 : 1 : assert_equals(fd.name, "blank.txt");
62 : 1 : assert_equals(fd.type, "");
63 : 1 : assert_equals(fd.size, 0);
64 : 1 : assert_greater_than_equal(fd.lastModified, before);
65 : 1 : assert_less_than_equal(fd.lastModified, new Date());
66 : 1 : }, 'testFormDataAppendEmptyBlob');
67 : 1 :
68 : 1 : function create_formdata() {
69 : 1 : var fd = new FormData();
70 : 1 : for (var i = 0; i < arguments.length; i++) {
71 : 1 : fd.append.apply(fd, arguments[i]);
72 : 1 : };
73 : 1 : return fd;
74 : 1 : }
75 : 1 :
76 : 1 : *
77 : 1 : * append.any.js
78 : 1 : */
|