summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/built-ins/JSON/parse/15.12.2-2-3.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
commit36d22d82aa202bb199967e9512281e9a53db42c9 (patch)
tree105e8c98ddea1c1e4784a60a5a6410fa416be2de /js/src/tests/test262/built-ins/JSON/parse/15.12.2-2-3.js
parentInitial commit. (diff)
downloadfirefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz
firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'js/src/tests/test262/built-ins/JSON/parse/15.12.2-2-3.js')
-rw-r--r--js/src/tests/test262/built-ins/JSON/parse/15.12.2-2-3.js51
1 files changed, 51 insertions, 0 deletions
diff --git a/js/src/tests/test262/built-ins/JSON/parse/15.12.2-2-3.js b/js/src/tests/test262/built-ins/JSON/parse/15.12.2-2-3.js
new file mode 100644
index 0000000000..4f1136bc48
--- /dev/null
+++ b/js/src/tests/test262/built-ins/JSON/parse/15.12.2-2-3.js
@@ -0,0 +1,51 @@
+// Copyright (c) 2012 Ecma International. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+es5id: 15.12.2-2-3
+description: >
+ JSON.parse - parsing an object where property name ends with a
+ null character
+---*/
+
+var nullChars = new Array();
+nullChars[0] = '\"\u0000\"';
+nullChars[1] = '\"\u0001\"';
+nullChars[2] = '\"\u0002\"';
+nullChars[3] = '\"\u0003\"';
+nullChars[4] = '\"\u0004\"';
+nullChars[5] = '\"\u0005\"';
+nullChars[6] = '\"\u0006\"';
+nullChars[7] = '\"\u0007\"';
+nullChars[8] = '\"\u0008\"';
+nullChars[9] = '\"\u0009\"';
+nullChars[10] = '\"\u000A\"';
+nullChars[11] = '\"\u000B\"';
+nullChars[12] = '\"\u000C\"';
+nullChars[13] = '\"\u000D\"';
+nullChars[14] = '\"\u000E\"';
+nullChars[15] = '\"\u000F\"';
+nullChars[16] = '\"\u0010\"';
+nullChars[17] = '\"\u0011\"';
+nullChars[18] = '\"\u0012\"';
+nullChars[19] = '\"\u0013\"';
+nullChars[20] = '\"\u0014\"';
+nullChars[21] = '\"\u0015\"';
+nullChars[22] = '\"\u0016\"';
+nullChars[23] = '\"\u0017\"';
+nullChars[24] = '\"\u0018\"';
+nullChars[25] = '\"\u0019\"';
+nullChars[26] = '\"\u001A\"';
+nullChars[27] = '\"\u001B\"';
+nullChars[28] = '\"\u001C\"';
+nullChars[29] = '\"\u001D\"';
+nullChars[30] = '\"\u001E\"';
+nullChars[31] = '\"\u001F\"';
+
+for (var index in nullChars) {
+ assert.throws(SyntaxError, function() {
+ var obj = JSON.parse('{' + "name" + nullChars[index] + ' : "John" } ');
+ });
+}
+
+reportCompare(0, 0);