Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 2d13d03

Browse files
author
Nikita Glukhov
committed
Fix jsonpath timestamptz encoding in jsonb tests
1 parent 76d01c6 commit 2d13d03

File tree

2 files changed

+62
-0
lines changed

2 files changed

+62
-0
lines changed

src/test/regress/expected/jsonb_sqljson.out

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -436,6 +436,37 @@ SELECT JSON_VALUE(jsonb 'null', '$a' PASSING point ' (1, 2 )' AS a RETURNING poi
436436
(1,2)
437437
(1 row)
438438

439+
-- Test timestamptz passing and output
440+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts);
441+
json_value
442+
------------------------------
443+
Tue Feb 20 18:34:56 2018 PST
444+
(1 row)
445+
446+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING timestamptz);
447+
json_value
448+
------------------------------
449+
Tue Feb 20 18:34:56 2018 PST
450+
(1 row)
451+
452+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING timestamp);
453+
json_value
454+
--------------------------
455+
Tue Feb 20 18:34:56 2018
456+
(1 row)
457+
458+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING json);
459+
json_value
460+
-----------------------------
461+
"2018-02-21T02:34:56+00:00"
462+
(1 row)
463+
464+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING jsonb);
465+
json_value
466+
-----------------------------
467+
"2018-02-21T02:34:56+00:00"
468+
(1 row)
469+
439470
-- JSON_QUERY
440471
SELECT
441472
JSON_QUERY(js, '$'),
@@ -799,6 +830,25 @@ SELECT JSON_QUERY(jsonb '{"a": 1}', '$.a' RETURNING sqljsonb_int_not_null);
799830

800831
SELECT JSON_QUERY(jsonb '{"a": 1}', '$.b' RETURNING sqljsonb_int_not_null);
801832
ERROR: domain sqljsonb_int_not_null does not allow null values
833+
-- Test timestamptz passing and output
834+
SELECT JSON_QUERY(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts);
835+
json_query
836+
-----------------------------
837+
"2018-02-21T02:34:56+00:00"
838+
(1 row)
839+
840+
SELECT JSON_QUERY(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING json);
841+
json_query
842+
-----------------------------
843+
"2018-02-21T02:34:56+00:00"
844+
(1 row)
845+
846+
SELECT JSON_QUERY(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING jsonb);
847+
json_query
848+
-----------------------------
849+
"2018-02-21T02:34:56+00:00"
850+
(1 row)
851+
802852
-- Test constraints
803853
CREATE TABLE test_jsonb_constraints (
804854
js text,

src/test/regress/sql/jsonb_sqljson.sql

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,13 @@ FROM
114114
SELECT JSON_VALUE(jsonb 'null', '$a' PASSING point ' (1, 2 )' AS a);
115115
SELECT JSON_VALUE(jsonb 'null', '$a' PASSING point ' (1, 2 )' AS a RETURNING point);
116116

117+
-- Test timestamptz passing and output
118+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts);
119+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING timestamptz);
120+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING timestamp);
121+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING json);
122+
SELECT JSON_VALUE(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING jsonb);
123+
117124
-- JSON_QUERY
118125

119126
SELECT
@@ -229,6 +236,11 @@ SELECT * FROM unnest(JSON_QUERY(jsonb '[{"a": 1, "t": ["foo", []]}, {"a": 2, "jb
229236
SELECT JSON_QUERY(jsonb '{"a": 1}', '$.a' RETURNING sqljsonb_int_not_null);
230237
SELECT JSON_QUERY(jsonb '{"a": 1}', '$.b' RETURNING sqljsonb_int_not_null);
231238

239+
-- Test timestamptz passing and output
240+
SELECT JSON_QUERY(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts);
241+
SELECT JSON_QUERY(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING json);
242+
SELECT JSON_QUERY(jsonb 'null', '$ts' PASSING timestamptz '2018-02-21 12:34:56 +10' AS ts RETURNING jsonb);
243+
232244
-- Test constraints
233245

234246
CREATE TABLE test_jsonb_constraints (

0 commit comments

Comments
 (0)