diff options
Diffstat (limited to 'src/test/regress/sql/json.sql')
| -rw-r--r-- | src/test/regress/sql/json.sql | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/test/regress/sql/json.sql b/src/test/regress/sql/json.sql index 5b6bc36517..4c4c6958bb 100644 --- a/src/test/regress/sql/json.sql +++ b/src/test/regress/sql/json.sql @@ -299,8 +299,14 @@ select * from json_populate_recordset(row('def',99,null)::jpop,'[{"c":[100,200,3 -- handling of unicode surrogate pairs -select json '{ "a": "\ud83d\ude04\ud83d\udc36" }' -> 'a' as correct; +select json '{ "a": "\ud83d\ude04\ud83d\udc36" }' -> 'a' as correct_in_utf8; select json '{ "a": "\ud83d\ud83d" }' -> 'a'; -- 2 high surrogates in a row select json '{ "a": "\ude04\ud83d" }' -> 'a'; -- surrogates in wrong order select json '{ "a": "\ud83dX" }' -> 'a'; -- orphan high surrogate select json '{ "a": "\ude04X" }' -> 'a'; -- orphan low surrogate + +--handling of simple unicode escapes + +select json '{ "a": "the Copyright \u00a9 sign" }' ->> 'a' as correct_in_utf8; +select json '{ "a": "dollar \u0024 character" }' ->> 'a' as correct_everywhere; +select json '{ "a": "null \u0000 escape" }' ->> 'a' as not_unescaped; |
