|
11 | 11 | package tree_test
|
12 | 12 |
|
13 | 13 | import (
|
14 |
| - "context" |
15 | 14 | "testing"
|
16 | 15 |
|
17 |
| - "github.com/auxten/postgresql-parser/pkg/settings/cluster" |
| 16 | + //"github.com/auxten/postgresql-parser/pkg/settings/cluster" |
18 | 17 | "github.com/auxten/postgresql-parser/pkg/sql/parser"
|
19 |
| - _ "github.com/auxten/postgresql-parser/pkg/sql/sem/builtins" |
| 18 | + //_ "github.com/auxten/postgresql-parser/pkg/sql/sem/builtins" |
20 | 19 | "github.com/auxten/postgresql-parser/pkg/sql/sem/tree"
|
| 20 | + "github.com/auxten/postgresql-parser/pkg/sql/sessiondata" |
21 | 21 | "github.com/auxten/postgresql-parser/pkg/sql/types"
|
22 | 22 | "github.com/auxten/postgresql-parser/pkg/util/leaktest"
|
23 | 23 | )
|
@@ -176,28 +176,28 @@ func TestNormalizeExpr(t *testing.T) {
|
176 | 176 | {`b+c<=1+1`, `(b + c) <= 2`},
|
177 | 177 | {`a/2=1`, `a = 2`},
|
178 | 178 | {`1=a/2`, `a = 2`},
|
179 |
| - {`s=lower('FOO')`, `s = 'foo'`}, |
180 |
| - {`lower(s)='foo'`, `lower(s) = 'foo'`}, |
181 |
| - {`random()`, `random()`}, |
182 |
| - {`gen_random_uuid()`, `gen_random_uuid()`}, |
183 |
| - {`current_date()`, `current_date()`}, |
184 |
| - {`clock_timestamp()`, `clock_timestamp()`}, |
185 |
| - {`now()`, `now()`}, |
186 |
| - {`current_timestamp()`, `current_timestamp()`}, |
187 |
| - {`current_timestamp(5)`, `current_timestamp(5)`}, |
188 |
| - {`transaction_timestamp()`, `transaction_timestamp()`}, |
189 |
| - {`statement_timestamp()`, `statement_timestamp()`}, |
190 |
| - {`cluster_logical_timestamp()`, `cluster_logical_timestamp()`}, |
191 |
| - {`clock_timestamp()`, `clock_timestamp()`}, |
192 |
| - {`crdb_internal.force_error('a', 'b')`, `crdb_internal.force_error('a', 'b')`}, |
193 |
| - {`crdb_internal.force_panic('a')`, `crdb_internal.force_panic('a')`}, |
194 |
| - {`crdb_internal.force_log_fatal('a')`, `crdb_internal.force_log_fatal('a')`}, |
195 |
| - {`crdb_internal.force_retry('1 day'::interval)`, `crdb_internal.force_retry('1 day')`}, |
196 |
| - {`crdb_internal.no_constant_folding(123)`, `crdb_internal.no_constant_folding(123)`}, |
197 |
| - {`crdb_internal.set_vmodule('a')`, `crdb_internal.set_vmodule('a')`}, |
198 |
| - {`uuid_v4()`, `uuid_v4()`}, |
199 |
| - {`experimental_uuid_v4()`, `experimental_uuid_v4()`}, |
200 |
| - {`a=count('FOO') OVER ()`, `a = count('FOO') OVER ()`}, |
| 179 | + //{`s=lower('FOO')`, `s = 'foo'`}, |
| 180 | + //{`lower(s)='foo'`, `lower(s) = 'foo'`}, |
| 181 | + //{`random()`, `random()`}, |
| 182 | + //{`gen_random_uuid()`, `gen_random_uuid()`}, |
| 183 | + //{`current_date()`, `current_date()`}, |
| 184 | + //{`clock_timestamp()`, `clock_timestamp()`}, |
| 185 | + //{`now()`, `now()`}, |
| 186 | + //{`current_timestamp()`, `current_timestamp()`}, |
| 187 | + //{`current_timestamp(5)`, `current_timestamp(5)`}, |
| 188 | + //{`transaction_timestamp()`, `transaction_timestamp()`}, |
| 189 | + //{`statement_timestamp()`, `statement_timestamp()`}, |
| 190 | + //{`cluster_logical_timestamp()`, `cluster_logical_timestamp()`}, |
| 191 | + //{`clock_timestamp()`, `clock_timestamp()`}, |
| 192 | + //{`crdb_internal.force_error('a', 'b')`, `crdb_internal.force_error('a', 'b')`}, |
| 193 | + //{`crdb_internal.force_panic('a')`, `crdb_internal.force_panic('a')`}, |
| 194 | + //{`crdb_internal.force_log_fatal('a')`, `crdb_internal.force_log_fatal('a')`}, |
| 195 | + //{`crdb_internal.force_retry('1 day'::interval)`, `crdb_internal.force_retry('1 day')`}, |
| 196 | + //{`crdb_internal.no_constant_folding(123)`, `crdb_internal.no_constant_folding(123)`}, |
| 197 | + //{`crdb_internal.set_vmodule('a')`, `crdb_internal.set_vmodule('a')`}, |
| 198 | + //{`uuid_v4()`, `uuid_v4()`}, |
| 199 | + //{`experimental_uuid_v4()`, `experimental_uuid_v4()`}, |
| 200 | + //{`a=count('FOO') OVER ()`, `a = count('FOO') OVER ()`}, |
201 | 201 | {`9223372036854775808`, `9223372036854775808`},
|
202 | 202 | {`-9223372036854775808`, `-9223372036854775808`},
|
203 | 203 | {`(1, 2, 3) = (1, 2, 3)`, `true`},
|
@@ -246,10 +246,10 @@ func TestNormalizeExpr(t *testing.T) {
|
246 | 246 | {`NULL IS NOT DISTINCT FROM d`, `d IS NULL`},
|
247 | 247 | {`NULL IS DISTINCT FROM d`, `d IS NOT NULL`},
|
248 | 248 | // #15454: ensure that operators are pretty-printed correctly after normalization.
|
249 |
| - {`(random() + 1.0)::INT8`, `(random() + 1.0)::INT8`}, |
250 |
| - {`('a' || left('b', random()::INT8)) COLLATE en`, `('a' || left('b', random()::INT8)) COLLATE en`}, |
| 249 | + //{`(random() + 1.0)::INT8`, `(random() + 1.0)::INT8`}, |
| 250 | + //{`('a' || left('b', random()::INT8)) COLLATE en`, `('a' || left('b', random()::INT8)) COLLATE en`}, |
251 | 251 | {`NULL COLLATE en`, `CAST(NULL AS STRING) COLLATE en`},
|
252 |
| - {`(1.0 + random()) IS OF (INT8)`, `(1.0 + random()) IS OF (INT8)`}, |
| 252 | + //{`(1.0 + random()) IS OF (INT8)`, `(1.0 + random()) IS OF (INT8)`}, |
253 | 253 | // #14687: ensure that negative divisors flip the inequality when rotating.
|
254 | 254 | {`1 < a / -2`, `a < -2`},
|
255 | 255 | {`1 <= a / -2`, `a <= -2`},
|
@@ -288,8 +288,12 @@ func TestNormalizeExpr(t *testing.T) {
|
288 | 288 | t.Fatalf("%s: %v", d.expr, err)
|
289 | 289 | }
|
290 | 290 | rOrig := typedExpr.String()
|
291 |
| - ctx := tree.NewTestingEvalContext(cluster.MakeTestingClusterSettings()) |
292 |
| - defer ctx.Mon.Stop(context.Background()) |
| 291 | + //ctx := tree.NewTestingEvalContext(cluster.MakeTestingClusterSettings()) |
| 292 | + ctx := tree.EvalContext{ |
| 293 | + SessionData: &sessiondata.SessionData{}, |
| 294 | + } |
| 295 | + |
| 296 | + //defer ctx.Mon.Stop(context.Background()) |
293 | 297 | r, err := ctx.NormalizeExpr(typedExpr)
|
294 | 298 | if err != nil {
|
295 | 299 | t.Fatalf("%s: %v", d.expr, err)
|
|
0 commit comments