Changeset: 1476dd50fd6d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/1476dd50fd6d
Added Files:
sql/test/SQLancer/Tests/sqlancer20.SQL.py
Modified Files:
sql/test/SQLancer/Tests/All
sql/test/SQLancer/Tests/sqlancer19.SQL.py
Branch: default
Log Message:
Split failing queries into a new test
diffs (89 lines):
diff --git a/sql/test/SQLancer/Tests/All b/sql/test/SQLancer/Tests/All
--- a/sql/test/SQLancer/Tests/All
+++ b/sql/test/SQLancer/Tests/All
@@ -16,4 +16,5 @@ sqlancer15
sqlancer16
sqlancer17
sqlancer18
-KNOWNFAIL?sqlancer19
+sqlancer19
+KNOWNFAIL?sqlancer20
diff --git a/sql/test/SQLancer/Tests/sqlancer19.SQL.py
b/sql/test/SQLancer/Tests/sqlancer19.SQL.py
--- a/sql/test/SQLancer/Tests/sqlancer19.SQL.py
+++ b/sql/test/SQLancer/Tests/sqlancer19.SQL.py
@@ -201,25 +201,6 @@ with SQLTestCase() as cli:
""").assertSucceeded()
cli.execute("SELECT testremote7(2), testremote7(3);") \
.assertSucceeded().assertDataResultMatch([(7,16)])
- # Issues related to digits and scale propagation in the sql layer
- cli.execute("SELECT CAST(2 AS DECIMAL) & CAST(3 AS DOUBLE) FROM t3 where
t3.c0 = 1;") \
- .assertSucceeded().assertDataResultMatch([(Decimal('0.002'),)])
- cli.execute("SELECT CAST(2 AS DECIMAL) & CAST(3 AS DOUBLE) FROM rt3 where
rt3.c0 = 1;") \
- .assertSucceeded().assertDataResultMatch([(Decimal('0.002'),)])
- cli.execute("SELECT greatest('69', splitpart('', '191', 2)) FROM t3 where
t3.c0 = 1;") \
- .assertSucceeded().assertDataResultMatch([('69',)])
- cli.execute("SELECT greatest('69', splitpart('', '191', 2)) FROM rt3 where
rt3.c0 = 1;") \
- .assertSucceeded().assertDataResultMatch([('69',)])
-
- # Issues related to comparisons not being correctly delimited on plans,
which causes ambiguity
- cli.execute("SELECT TRUE BETWEEN (TRUE BETWEEN FALSE AND FALSE) AND TRUE
FROM t3 where t3.c0 = 1;") \
- .assertSucceeded().assertDataResultMatch([(True,)])
- cli.execute("SELECT TRUE BETWEEN (TRUE BETWEEN FALSE AND FALSE) AND TRUE
FROM rt3 where rt3.c0 = 1;") \
- .assertSucceeded().assertDataResultMatch([(True,)])
- cli.execute("SELECT 1 FROM t3 WHERE (t3.c0 BETWEEN t3.c0 AND t3.c0) IS
NULL;") \
- .assertSucceeded().assertDataResultMatch([])
- cli.execute("SELECT 2 FROM rt3 WHERE (rt3.c0 BETWEEN rt3.c0 AND rt3.c0) IS
NULL;") \
- .assertSucceeded().assertDataResultMatch([])
cli.execute("ROLLBACK;")
cli.execute("""
diff --git a/sql/test/SQLancer/Tests/sqlancer20.SQL.py
b/sql/test/SQLancer/Tests/sqlancer20.SQL.py
new file mode 100644
--- /dev/null
+++ b/sql/test/SQLancer/Tests/sqlancer20.SQL.py
@@ -0,0 +1,45 @@
+import os
+from decimal import Decimal
+
+from MonetDBtesting.sqltest import SQLTestCase
+
+port = os.environ['MAPIPORT']
+db = os.environ['TSTDB']
+
+with SQLTestCase() as cli:
+ cli.connect(username="monetdb", password="monetdb")
+ cli.execute("""
+ START TRANSACTION;
+ CREATE TABLE "t1" ("c0" BIGINT,"c1" INTERVAL MONTH);
+ INSERT INTO "t1" VALUES (1, INTERVAL '9' MONTH),(5, INTERVAL '6'
MONTH),(5, NULL),(7, NULL),(2, INTERVAL '1' MONTH),(2, INTERVAL '1' MONTH);
+ COMMIT;
+
+ START TRANSACTION;
+ CREATE REMOTE TABLE "rt1" ("c0" BIGINT,"c1" INTERVAL MONTH) ON
'mapi:monetdb://localhost:%s/%s/sys/t1';
+ COMMIT;""" % (port, db)).assertSucceeded()
+
+ # Issues related to digits and scale propagation in the sql layer
+ cli.execute("SELECT CAST(2 AS DECIMAL) & CAST(3 AS DOUBLE) FROM t1 where
t1.c0 = 1;") \
+ .assertSucceeded().assertDataResultMatch([(Decimal('0.002'),)])
+ cli.execute("SELECT CAST(2 AS DECIMAL) & CAST(3 AS DOUBLE) FROM rt1 where
rt1.c0 = 1;") \
+ .assertSucceeded().assertDataResultMatch([(Decimal('0.002'),)])
+ cli.execute("SELECT greatest('69', splitpart('', '191', 2)) FROM t1 where
t1.c0 = 1;") \
+ .assertSucceeded().assertDataResultMatch([('69',)])
+ cli.execute("SELECT greatest('69', splitpart('', '191', 2)) FROM rt1 where
rt1.c0 = 1;") \
+ .assertSucceeded().assertDataResultMatch([('69',)])
+
+ # Issues related to comparisons not being correctly delimited on plans,
which causes ambiguity
+ cli.execute("SELECT TRUE BETWEEN (TRUE BETWEEN FALSE AND FALSE) AND TRUE
FROM t1 where t1.c0 = 1;") \
+ .assertSucceeded().assertDataResultMatch([(True,)])
+ cli.execute("SELECT TRUE BETWEEN (TRUE BETWEEN FALSE AND FALSE) AND TRUE
FROM rt1 where rt1.c0 = 1;") \
+ .assertSucceeded().assertDataResultMatch([(True,)])
+ cli.execute("SELECT 1 FROM t1 WHERE (t1.c0 BETWEEN t1.c0 AND t1.c0) IS
NULL;") \
+ .assertSucceeded().assertDataResultMatch([])
+ cli.execute("SELECT 2 FROM rt1 WHERE (rt1.c0 BETWEEN rt1.c0 AND rt1.c0) IS
NULL;") \
+ .assertSucceeded().assertDataResultMatch([])
+
+ cli.execute("""
+ START TRANSACTION;
+ DROP TABLE rt1;
+ DROP TABLE t1;
+ COMMIT;""").assertSucceeded()
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list