built-ins/JSON/*: make all indentation consistent (depth & character) (#1440)

This commit is contained in:
Rick Waldron 2018-02-15 15:25:45 -05:00 committed by Leo Balter
parent ff4f13099c
commit 7c66f39f41
72 changed files with 1046 additions and 861 deletions

View File

@ -35,7 +35,10 @@ info: |
features: [Proxy] features: [Proxy]
---*/ ---*/
var objectProxy = new Proxy({ length: 0, other: 0 }, {}); var objectProxy = new Proxy({
length: 0,
other: 0
}, {});
var arrayProxy = new Proxy([], {}); var arrayProxy = new Proxy([], {});
var arrayProxyProxy = new Proxy(arrayProxy, {}); var arrayProxyProxy = new Proxy(arrayProxy, {});
var visitedOther, injectProxy; var visitedOther, injectProxy;

View File

@ -30,7 +30,9 @@ info: |
features: [Proxy] features: [Proxy]
---*/ ---*/
var badDefine = new Proxy({ 0: null }, { var badDefine = new Proxy({
0: null
}, {
defineProperty: function() { defineProperty: function() {
throw new Test262Error(); throw new Test262Error();
} }

View File

@ -28,7 +28,9 @@ info: |
features: [Proxy] features: [Proxy]
---*/ ---*/
var badDelete = new Proxy({ a: 1 }, { var badDelete = new Proxy({
a: 1
}, {
deleteProperty: function() { deleteProperty: function() {
throw new Test262Error(); throw new Test262Error();
} }

View File

@ -8,4 +8,6 @@ description: >
value can return undefined. value can return undefined.
---*/ ---*/
assert.sameValue(JSON.stringify(42, function(k, v) { return undefined }), undefined, 'JSON.stringify(42, function(k, v) { return undefined })'); assert.sameValue(JSON.stringify(42, function(k, v) {
return undefined
}), undefined, 'JSON.stringify(42, function(k, v) { return undefined })');

View File

@ -8,4 +8,8 @@ description: >
can return undefined. can return undefined.
---*/ ---*/
assert.sameValue(JSON.stringify({prop:1}, function(k, v) { return undefined }), undefined, 'JSON.stringify({prop:1}, function(k, v) { return undefined })'); assert.sameValue(JSON.stringify({
prop: 1
}, function(k, v) {
return undefined
}), undefined, 'JSON.stringify({prop:1}, function(k, v) { return undefined })');

View File

@ -8,4 +8,6 @@ description: >
can return an Array. can return an Array.
---*/ ---*/
assert.sameValue(JSON.stringify(42, function(k, v) { return v==42 ?[4,2]:v }), '[4,2]', 'JSON.stringify(42, function(k, v) { return v==42 ?[4,2]:v })'); assert.sameValue(JSON.stringify(42, function(k, v) {
return v == 42 ? [4, 2] : v
}), '[4,2]', 'JSON.stringify(42, function(k, v) { return v==42 ?[4,2]:v })');

View File

@ -8,4 +8,8 @@ description: >
can return an Object. can return an Object.
---*/ ---*/
assert.sameValue(JSON.stringify(42, function(k, v) { return v==42 ? {forty:2}: v}), '{"forty":2}', 'JSON.stringify(42, function(k, v) { return v==42 ? {forty:2}: v})'); assert.sameValue(JSON.stringify(42, function(k, v) {
return v == 42 ? {
forty: 2
} : v
}), '{"forty":2}', 'JSON.stringify(42, function(k, v) { return v==42 ? {forty:2}: v})');

View File

@ -8,4 +8,6 @@ description: >
returns the replacer value. returns the replacer value.
---*/ ---*/
assert.sameValue(JSON.stringify(function() {}, function(k,v) {return 99}), '99', 'JSON.stringify(function() {}, function(k,v) {return 99})'); assert.sameValue(JSON.stringify(function() {}, function(k, v) {
return 99
}), '99', 'JSON.stringify(function() {}, function(k,v) {return 99})');

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F": "John" }); var str = JSON.stringify({
"\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F": "John"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001Fname": "John" }); var str = JSON.stringify({
"\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001Fname": "John"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "name\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F": "John" }); var str = JSON.stringify({
"name\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F": "John"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001Fname\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F": "John" }); var str = JSON.stringify({
"\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001Fname\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F": "John"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1 && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1 && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -8,4 +8,6 @@ description: >
undefined value. undefined value.
---*/ ---*/
assert.sameValue(JSON.stringify(undefined, function(k, v) { return "replacement" }), '"replacement"', 'JSON.stringify(undefined, function(k, v) { return "replacement" })'); assert.sameValue(JSON.stringify(undefined, function(k, v) {
return "replacement"
}), '"replacement"', 'JSON.stringify(undefined, function(k, v) { return "replacement" })');

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "na\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001Fme": "John" }); var str = JSON.stringify({
"na\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001Fme": "John"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "name": "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" }); var str = JSON.stringify({
"name": "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "name": "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001FJohn" }); var str = JSON.stringify({
"name": "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001FJohn"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "name": "John\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" }); var str = JSON.stringify({
"name": "John\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "name": "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001FJohn\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" }); var str = JSON.stringify({
"name": "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001FJohn\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1 && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1 && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -47,7 +47,9 @@ description: >
for (var index in expectedNullChars) { for (var index in expectedNullChars) {
var str = JSON.stringify({ "name": "Jo\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001Fhn" }); var str = JSON.stringify({
"name": "Jo\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u0009\u000A\u000B\u000C\u000D\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001Fhn"
});
result = (result && str.indexOf(expectedNullChars[index]) !== -1 && str.indexOf(expectedNullChars[index]) !== -1); result = (result && str.indexOf(expectedNullChars[index]) !== -1 && str.indexOf(expectedNullChars[index]) !== -1);
} }

View File

@ -8,6 +8,15 @@ description: >
Number values Number values
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj, null, new Number(5)), JSON.stringify(obj, null, 5), 'JSON.stringify(obj,null, new Number(5))'); assert.sameValue(JSON.stringify(obj, null, new Number(5)), JSON.stringify(obj, null, 5), 'JSON.stringify(obj,null, new Number(5))');

View File

@ -8,6 +8,15 @@ description: >
String values String values
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj, null, new String('xxx')), JSON.stringify(obj, null, 'xxx'), 'JSON.stringify(obj,null, new String("xxx"))'); assert.sameValue(JSON.stringify(obj, null, new String('xxx')), JSON.stringify(obj, null, 'xxx'), 'JSON.stringify(obj,null, new String("xxx"))');

View File

@ -8,6 +8,15 @@ description: >
same as a space argument of 10. same as a space argument of 10.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj, null, 10), JSON.stringify(obj, null, 100), 'JSON.stringify(obj,null, 10)'); assert.sameValue(JSON.stringify(obj, null, 10), JSON.stringify(obj, null, 100), 'JSON.stringify(obj,null, 10)');

View File

@ -8,6 +8,15 @@ description: >
their integer part. their integer part.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj, null, 5.99999), JSON.stringify(obj, null, 5), 'JSON.stringify(obj,null, 5.99999)'); assert.sameValue(JSON.stringify(obj, null, 5.99999), JSON.stringify(obj, null, 5), 'JSON.stringify(obj,null, 5.99999)');

View File

@ -8,7 +8,16 @@ description: >
(0.999999)the same as empty string space argument. (0.999999)the same as empty string space argument.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
/* empty string should be same as no space arg */ /* empty string should be same as no space arg */
assert.sameValue(JSON.stringify(obj, null, 0.999999), JSON.stringify(obj)); assert.sameValue(JSON.stringify(obj, null, 0.999999), JSON.stringify(obj));

View File

@ -8,7 +8,16 @@ description: >
same as empty string space argument. same as empty string space argument.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
/* empty string should be same as no space arg */ /* empty string should be same as no space arg */
assert.sameValue(JSON.stringify(obj, null, 0), JSON.stringify(obj)); assert.sameValue(JSON.stringify(obj, null, 0), JSON.stringify(obj));

View File

@ -8,7 +8,16 @@ description: >
same as empty string space argument. same as empty string space argument.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
/* empty string should be same as no space arg */ /* empty string should be same as no space arg */
assert.sameValue(JSON.stringify(obj, null, -5), JSON.stringify(obj)); assert.sameValue(JSON.stringify(obj, null, -5), JSON.stringify(obj));

View File

@ -8,7 +8,16 @@ description: >
is equivalent to a string of spaces of that length. is equivalent to a string of spaces of that length.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
var fiveSpaces = ' '; var fiveSpaces = ' ';
// '12345' // '12345'

View File

@ -8,6 +8,15 @@ description: >
arguments. arguments.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj, null, '0123456789xxxxxxxxx'), JSON.stringify(obj, null, '0123456789'), 'JSON.stringify(obj,null, "0123456789xxxxxxxxx")'); assert.sameValue(JSON.stringify(obj, null, '0123456789xxxxxxxxx'), JSON.stringify(obj, null, '0123456789'), 'JSON.stringify(obj,null, "0123456789xxxxxxxxx")');

View File

@ -8,6 +8,15 @@ description: >
missing space argument. missing space argument.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, ''), 'JSON.stringify(obj)'); assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, ''), 'JSON.stringify(obj)');

View File

@ -8,6 +8,15 @@ description: >
missing space argument. missing space argument.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, true), 'JSON.stringify(obj)'); assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, true), 'JSON.stringify(obj)');

View File

@ -8,6 +8,15 @@ description: >
space argument. space argument.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, null), 'JSON.stringify(obj)'); assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, null), 'JSON.stringify(obj)');

View File

@ -8,6 +8,15 @@ description: >
as a missing space argument. as a missing space argument.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, new Boolean(true)), 'JSON.stringify(obj)'); assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, new Boolean(true)), 'JSON.stringify(obj)');

View File

@ -8,6 +8,15 @@ description: >
the same as a missing space argument. the same as a missing space argument.
---*/ ---*/
var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; var obj = {
a1: {
b1: [1, 2, 3, 4],
b2: {
c1: 1,
c2: 2
}
},
a2: 'a2'
};
assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, obj), 'JSON.stringify(obj)'); assert.sameValue(JSON.stringify(obj), JSON.stringify(obj, null, obj), 'JSON.stringify(obj)');

View File

@ -10,7 +10,9 @@ description: >
var obj = { var obj = {
prop: 42, prop: 42,
toJSON: function () {return 'fortytwo objects'} toJSON: function() {
return 'fortytwo objects'
}
}; };
assert.sameValue(JSON.stringify([obj]), '["fortytwo objects"]', 'JSON.stringify([obj])'); assert.sameValue(JSON.stringify([obj]), '["fortytwo objects"]', 'JSON.stringify([obj])');

View File

@ -10,7 +10,9 @@ description: >
var obj = { var obj = {
prop: 42, prop: 42,
toJSON: function () {return new Number(42)} toJSON: function() {
return new Number(42)
}
}; };
assert.sameValue(JSON.stringify([obj]), '[42]', 'JSON.stringify([obj])'); assert.sameValue(JSON.stringify([obj]), '[42]', 'JSON.stringify([obj])');

View File

@ -10,7 +10,9 @@ description: >
var obj = { var obj = {
prop: 42, prop: 42,
toJSON: function () {return new Boolean(true)} toJSON: function() {
return new Boolean(true)
}
}; };
assert.sameValue(JSON.stringify([obj]), '[true]', 'JSON.stringify([obj])'); assert.sameValue(JSON.stringify([obj]), '[true]', 'JSON.stringify([obj])');

View File

@ -8,4 +8,6 @@ description: >
replacer functions to literal strings. replacer functions to literal strings.
---*/ ---*/
assert.sameValue(JSON.stringify([42], function(k,v) {return v===42? new String('fortytwo'):v}), '["fortytwo"]', 'JSON.stringify([42], function(k,v) {return v===42? new String("fortytwo"):v})'); assert.sameValue(JSON.stringify([42], function(k, v) {
return v === 42 ? new String('fortytwo') : v
}), '["fortytwo"]', 'JSON.stringify([42], function(k,v) {return v===42? new String("fortytwo"):v})');

View File

@ -8,4 +8,6 @@ description: >
replacer functions to literal numbers. replacer functions to literal numbers.
---*/ ---*/
assert.sameValue(JSON.stringify([42], function(k,v) {return v===42? new Number(84):v}), '[84]', 'JSON.stringify([42], function(k,v) {return v===42? new Number(84):v})'); assert.sameValue(JSON.stringify([42], function(k, v) {
return v === 42 ? new Number(84) : v
}), '[84]', 'JSON.stringify([42], function(k,v) {return v===42? new Number(84):v})');

View File

@ -8,4 +8,6 @@ description: >
replacer functions to literal numbers. replacer functions to literal numbers.
---*/ ---*/
assert.sameValue(JSON.stringify([42], function(k,v) {return v===42? new Boolean(false):v}), '[false]', 'JSON.stringify([42], function(k,v) {return v===42? new Boolean(false):v})'); assert.sameValue(JSON.stringify([42], function(k, v) {
return v === 42 ? new Boolean(false) : v
}), '[false]', 'JSON.stringify([42], function(k,v) {return v===42? new Boolean(false):v})');

View File

@ -6,7 +6,11 @@ es5id: 15.12.3_4-1-3
description: JSON.stringify a indirectly circular object throws a error description: JSON.stringify a indirectly circular object throws a error
---*/ ---*/
var obj = {p1: {p2: {}}}; var obj = {
p1: {
p2: {}
}
};
obj.p1.p2.prop = obj; obj.p1.p2.prop = obj;
assert.throws(TypeError, function() { assert.throws(TypeError, function() {