diff options
Diffstat (limited to 'js/src/tests/test262/built-ins/JSON/parse/reviver-call-order.js')
-rw-r--r-- | js/src/tests/test262/built-ins/JSON/parse/reviver-call-order.js | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/js/src/tests/test262/built-ins/JSON/parse/reviver-call-order.js b/js/src/tests/test262/built-ins/JSON/parse/reviver-call-order.js new file mode 100644 index 0000000000..bdab32af01 --- /dev/null +++ b/js/src/tests/test262/built-ins/JSON/parse/reviver-call-order.js @@ -0,0 +1,22 @@ +// Copyright 2019 Kevin Gibbons. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-internalizejsonproperty +description: JSON.parse reviver call order +features: [for-in-order] +includes: [compareArray.js] +---*/ + +var calls = []; +function reviver(name, val) { + calls.push(name); + return val; +} + +JSON.parse('{"p1":0,"p2":0,"p1":0,"2":0,"1":0}', reviver); + +// The empty string is the _rootName_ in JSON.parse +assert.compareArray(calls, ['1', '2', 'p1', 'p2', '']); + +reportCompare(0, 0); |