summaryrefslogtreecommitdiff
path: root/ext/json/tests
diff options
context:
space:
mode:
authorAndrea Faulds <ajf@ajf.me>2013-09-10 21:22:06 +0000
committerAndrea Faulds <ajf@ajf.me>2013-09-17 19:09:52 +0000
commit2524428504ec9e154b01db7f6040e42c1bc89ada (patch)
treefa07d5e68701cc67300757133dc8e36121acc09c /ext/json/tests
parent7beef74a827f393753852f7239af75af236fb4f8 (diff)
downloadphp-git-2524428504ec9e154b01db7f6040e42c1bc89ada.tar.gz
Fixed whitespace part of bug #64874 ("json_decode handles whitespace and case-sensitivity incorrectly")
Diffstat (limited to 'ext/json/tests')
-rw-r--r--ext/json/tests/bug64874_part1.phpt51
1 files changed, 51 insertions, 0 deletions
diff --git a/ext/json/tests/bug64874_part1.phpt b/ext/json/tests/bug64874_part1.phpt
new file mode 100644
index 0000000000..4047eb895c
--- /dev/null
+++ b/ext/json/tests/bug64874_part1.phpt
@@ -0,0 +1,51 @@
+--TEST--
+Whitespace part of bug #64874 ("json_decode handles whitespace and case-sensitivity incorrectly")
+--SKIPIF--
+<?php if (!extension_loaded("json")) print "skip"; ?>
+--FILE--
+<?php
+function decode($json) {
+ var_dump(json_decode($json));
+ var_dump(json_last_error() !== 0);
+ echo "\n";
+}
+
+// Leading whitespace should be ignored
+decode(" true");
+decode("\ttrue");
+decode("\ntrue");
+decode("\rtrue");
+
+// So should trailing whitespace
+decode("true ");
+decode("true\t");
+decode("true\n");
+decode("true\r");
+
+echo "Done\n";
+--EXPECT--
+bool(true)
+bool(false)
+
+bool(true)
+bool(false)
+
+bool(true)
+bool(false)
+
+bool(true)
+bool(false)
+
+bool(true)
+bool(false)
+
+bool(true)
+bool(false)
+
+bool(true)
+bool(false)
+
+bool(true)
+bool(false)
+
+Done