Skip to content

Commit 9f067d6

Browse files
committed
logictest: clean up jsonpath logictests
This commit cleans up some jsonpath-related logictests. Some tests that were commented out previously due to some functionality not being supported yet within jsonpath have now been uncommented. Epic: None Release note: None
1 parent 697f493 commit 9f067d6

File tree

2 files changed

+65
-61
lines changed

2 files changed

+65
-61
lines changed

pkg/sql/logictest/testdata/logic_test/jsonb_path_query

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
# LogicTest: !local-mixed-24.3 !local-mixed-25.1
22

3-
query T
4-
SELECT jsonb_path_query('"\\"', '$ ? (@ like_regex "^\\\\$")');
5-
----
6-
"\\"
7-
83
query T
94
SELECT jsonb_path_query('{}', '$')
105
----
@@ -914,12 +909,21 @@ SELECT jsonb_path_query('[null, 1, "abc", "abd", "aBdC", "abdacb", "babc", "adc\
914909
"abc"
915910
"abdacb"
916911

917-
# TODO(normanchenn): support scanning identQuote within regex.
918-
# SELECT jsonb_path_query('"He said \"Hello\\World!\""', '$ ? (@ like_regex ".*\"H.*\\\\.*!.*\".*")');
912+
query T
913+
SELECT jsonb_path_query('"He said \"Hello\\World!\""', '$ ? (@ like_regex ".*\"H.*\\\\.*!.*\".*")');
914+
----
915+
"He said \"Hello\\World!\""
916+
917+
query T rowsort
918+
SELECT jsonb_path_query('{"a": [1, 2], "b": "hello"}', '$.a ? ($.b == "hello") ');
919+
----
920+
1
921+
2
922+
923+
query T
924+
SELECT jsonb_path_query('{"a": [1, 2], "b": "hello"}', 'strict $.a ? ($.b == "hello") ');
925+
----
926+
[1, 2]
919927

920928
# select jsonb_path_query('[1, 2, 3, 4, 5]', '$[-1]');
921929
# select jsonb_path_query('[1, 2, 3, 4, 5]', 'strict $[-1]');
922-
923-
# interesting functionality
924-
# select jsonb_path_query('{"a": [1, 2], "b": "hello"}', '$.a ? ($.b == "hello") ');
925-
# select jsonb_path_query('{"a": [1, 2], "b": "hello"}', '$.a');

pkg/sql/logictest/testdata/logic_test/jsonpath

Lines changed: 50 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,56 @@ SELECT bpchar('$. abc [*]':::JSONPATH::JSONPATH)::BPCHAR FROM t ORDER BY 1
100100
----
101101
$."abc"[*]
102102

103+
query T
104+
SELECT '$.a[*] ? (@.b == 1 && @.c != 1)'::JSONPATH
105+
----
106+
$."a"[*]?(((@."b" == 1) && (@."c" != 1)))
107+
108+
query T
109+
SELECT '$.a[*] ? (@.b != 1)'::JSONPATH
110+
----
111+
$."a"[*]?((@."b" != 1))
112+
113+
query T
114+
SELECT '$.a[*] ? (@.b < 1)'::JSONPATH
115+
----
116+
$."a"[*]?((@."b" < 1))
117+
118+
query T
119+
SELECT '$.a[*] ? (@.b <= 1)'::JSONPATH
120+
----
121+
$."a"[*]?((@."b" <= 1))
122+
123+
query T
124+
SELECT '$.a[*] ? (@.b > 1)'::JSONPATH
125+
----
126+
$."a"[*]?((@."b" > 1))
127+
128+
query T
129+
SELECT '$.a[*] ? (@.b >= 1)'::JSONPATH
130+
----
131+
$."a"[*]?((@."b" >= 1))
132+
133+
query T
134+
SELECT '$.a ? ($.b == 1)'::JSONPATH
135+
----
136+
$."a"?(($."b" == 1))
137+
138+
query T
139+
SELECT '$.a ? (@.b == 1).c ? (@.d == 2)'::JSONPATH
140+
----
141+
$."a"?((@."b" == 1))."c"?((@."d" == 2))
142+
143+
query T
144+
SELECT '$.a?(@.b==1).c?(@.d==2)'::JSONPATH
145+
----
146+
$."a"?((@."b" == 1))."c"?((@."d" == 2))
147+
148+
query T
149+
SELECT '$ . a ? ( @ . b == 1 ) . c ? ( @ . d == 2 ) '::JSONPATH
150+
----
151+
$."a"?((@."b" == 1))."c"?((@."d" == 2))
152+
103153
## When we allow table creation
104154

105155
# statement ok
@@ -132,57 +182,7 @@ $."abc"[*]
132182
# ----
133183
# $.*
134184

135-
# query T
136-
# SELECT '$.a[*] ? (@.b == 1 && @.c != 1)'::JSONPATH
137-
# ----
138-
# $.a[*] ? (@.b == 1 && @.c != 1)
139-
140-
# query T
141-
# SELECT '$.a[*] ? (@.b != 1)'::JSONPATH
142-
# ----
143-
# $.a[*] ? (@.b != 1)
144-
145-
# query T
146-
# SELECT '$.a[*] ? (@.b < 1)'::JSONPATH
147-
# ----
148-
# $.a[*] ? (@.b < 1)
149-
150-
# query T
151-
# SELECT '$.a[*] ? (@.b <= 1)'::JSONPATH
152-
# ----
153-
# $.a[*] ? (@.b <= 1)
154-
155-
# query T
156-
# SELECT '$.a[*] ? (@.b > 1)'::JSONPATH
157-
# ----
158-
# $.a[*] ? (@.b > 1)
159-
160-
# query T
161-
# SELECT '$.a[*] ? (@.b >= 1)'::JSONPATH
162-
# ----
163-
# $.a[*] ? (@.b >= 1)
164-
165-
# query T
166-
# SELECT '$.a ? (@.b == 1).c ? (@.d == 2)'::JSONPATH
167-
# ----
168-
# $.a ? (@.b == 1).c ? (@.d == 2)
169-
170-
# query T
171-
# SELECT '$.a?(@.b==1).c?(@.d==2)'::JSONPATH
172-
# ----
173-
# $.a?(@.b==1).c?(@.d==2)
174-
175-
# query T
176-
# SELECT '$ . a ? ( @ . b == 1 ) . c ? ( @ . d == 2 ) '::JSONPATH
177-
# ----
178-
# $ . a ? ( @ . b == 1 ) . c ? ( @ . d == 2 )
179-
180185
# query T
181186
# SELECT '$.a.type()'::JSONPATH
182187
# ----
183188
# $.a.type()
184-
185-
# query T
186-
# SELECT '$.a ? ($.b == 1)'::JSONPATH
187-
# ----
188-
# $.a ? ($.b == 1)

0 commit comments

Comments
 (0)