forked from jquery/jquery-migrate
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathserialize.js
58 lines (45 loc) · 1.65 KB
/
serialize.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
QUnit.module( "serialize" );
// Support jQuery slim which excludes the ajax module
// The jQuery.param patch is about respecting `jQuery.ajaxSettings.traditional`
// so it doesn't make sense for the slim build.
if ( jQuery.ajax ) {
QUnit.test( "jQuery.param( x, traditional)", function( assert ) {
assert.expect( 12 );
var savedTraditional = jQuery.ajaxSettings.traditional,
data = { a: [ 1, 2 ] },
standardResult = "a%5B%5D=1&a%5B%5D=2",
traditionalResult = "a=1&a=2";
expectNoWarning( assert, "default, traditional default", function() {
assert.equal(
jQuery.param( data ), standardResult,
"default, traditional default" );
} );
expectNoWarning( assert, "explicit true, traditional default", function() {
assert.equal(
jQuery.param( data, true ), traditionalResult,
"explicit true, traditional default" );
} );
expectNoWarning( assert, "explicit false, traditional default", function() {
assert.equal(
jQuery.param( data, false ), standardResult,
"explicit false, traditional default" );
} );
jQuery.ajaxSettings.traditional = true;
expectWarning( assert, "default, traditional true", function() {
assert.equal(
jQuery.param( data ), traditionalResult,
"default, traditional true" );
} );
expectNoWarning( assert, "explicit true, traditional true", function() {
assert.equal(
jQuery.param( data, true ), traditionalResult,
"explicit true, traditional true" );
} );
expectNoWarning( assert, "explicit false, traditional true", function() {
assert.equal(
jQuery.param( data, false ), standardResult,
"explicit false, traditional true" );
} );
jQuery.ajaxSettings.traditional = savedTraditional;
} );
}