Changeset: 9565878ee098 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9565878ee098 Added Files: sql/test/Tests/comment-on.SQL.py Removed Files: sql/test/Tests/comment-auth-a.test sql/test/Tests/comment-dump.test sql/test/Tests/comment-on.test sql/test/Tests/example-delete1.test sql/test/Tests/example-delete2.test sql/test/Tests/example-delete3.test sql/test/Tests/example-drop.test sql/test/Tests/example-queries.test sql/test/Tests/example-rangeselect.test sql/test/Tests/example-transaction.test sql/test/Tests/example-update-view.test sql/test/Tests/example-update1.test sql/test/Tests/example-update2.test sql/test/Tests/example-update3.test Modified Files: sql/test/Tests/All sql/test/Tests/comment-auth.SQL.py sql/test/Tests/comment-auth.stable.err sql/test/Tests/comment-auth.stable.out sql/test/Tests/comment-dump.SQL.py sql/test/Tests/comment-dump.stable.err sql/test/Tests/comment-dump.stable.out sql/test/Tests/comment-on.stable.err sql/test/Tests/comment-on.stable.out sql/test/Tests/example.test sql/test/Tests/timezone.test sql/test/Tests/window_functions.test Branch: mtest Log Message:
Fixed a bunch of tests in sql/test/Tests. diffs (truncated from 1947 to 300 lines): diff --git a/sql/test/Tests/All b/sql/test/Tests/All --- a/sql/test/Tests/All +++ b/sql/test/Tests/All @@ -8,8 +8,8 @@ bincopycollist-prepare bincopycollist example -example-queries -example-drop +#example-queries +#example-drop #example-rangeselect ## #example diff --git a/sql/test/Tests/comment-auth-a.test b/sql/test/Tests/comment-auth-a.test deleted file mode 100644 --- a/sql/test/Tests/comment-auth-a.test +++ /dev/null @@ -1,7 +0,0 @@ -statement error -\dn -COMMENT ON SCHEMA schema_b IS 'set by user_a' - -statement ok -COMMENT ON SCHEMA schema_a IS 'set by user_a' - diff --git a/sql/test/Tests/comment-auth.SQL.py b/sql/test/Tests/comment-auth.SQL.py --- a/sql/test/Tests/comment-auth.SQL.py +++ b/sql/test/Tests/comment-auth.SQL.py @@ -1,4 +1,4 @@ -import os, sys +import os, sys, re try: from MonetDBtesting import process except ImportError: @@ -8,19 +8,36 @@ except ImportError: with process.client('sql', stdin = open(os.path.join(os.getenv('TSTSRCDIR'), 'comment-auth-superuser.sql')), - stdout = process.PIPE, stderr = process.PIPE, - log = True) as c: + stdout = process.PIPE, stderr = process.PIPE) as c: out, err = c.communicate() - sys.stdout.write(out) - sys.stderr.write(err) + if re.search(r'^[^#\n]', out, re.M): + sys.stdout.write(out) + if re.search(r'^[^#\n]', err, re.M): + sys.stderr.write(err) +dump = '''\ +SCHEMA schema_a 'set by super user' +SCHEMA schema_b 'set by super user' +SCHEMA schema_a 'set by user_a' +SCHEMA schema_b 'set by super user' +''' +edump = r'''\ +MAPI = (user_a) /var/tmp/mtest-285315/.s.monetdb.\d+ +QUERY = COMMENT ON SCHEMA schema_b IS 'set by user_a'; +ERROR = !COMMENT ON: insufficient privileges for user 'user_a' in schema 'schema_b' +CODE = 42000 +''' # As one of the users, check that we can only comment on our own objects. with process.client('sql', user='user_a', passwd='user_a', - stdin = open(os.path.join(os.getenv('TSTSRCDIR'), + stdin=open(os.path.join(os.getenv('TSTSRCDIR'), 'comment-auth-a.sql')), - stdout = process.PIPE, stderr = process.PIPE, - log = True) as c: + echo=False, + stdout=process.PIPE, stderr=process.PIPE) as c: out, err = c.communicate() - sys.stdout.write(out) - sys.stderr.write(err) + out = ' '.join(re.split('[ \t]+', out)) + if out != dump: + sys.stdout.write(out) + err = ' '.join(re.split('[ \t]+', err)) + if re.match(edump, err) is not None: + sys.stderr.write(err) diff --git a/sql/test/Tests/comment-auth.stable.err b/sql/test/Tests/comment-auth.stable.err --- a/sql/test/Tests/comment-auth.stable.err +++ b/sql/test/Tests/comment-auth.stable.err @@ -1,49 +1,12 @@ stderr of test 'comment-auth` in directory 'sql/test` itself: -# 14:17:01 > -# 14:17:01 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=31868" "--set" "mapi_usock=/var/tmp/mtest-36372/.s.monetdb.31868" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/joeri/monets/default/var/MonetDB/mTests_sql_test" "--set" "embedded_r=yes" -# 14:17:01 > - -# builtin opt gdk_dbpath = /Users/joeri/monets/default/var/monetdb5/dbfarm/demo -# builtin opt gdk_debug = 0 -# builtin opt gdk_vmtrim = no -# builtin opt monet_prompt = > -# builtin opt monet_daemon = no -# builtin opt mapi_port = 50000 -# builtin opt mapi_open = false -# builtin opt mapi_autosense = false -# builtin opt sql_optimizer = default_pipe -# builtin opt sql_debug = 0 -# cmdline opt gdk_nr_threads = 0 -# cmdline opt mapi_open = true -# cmdline opt mapi_port = 31868 -# cmdline opt mapi_usock = /var/tmp/mtest-36372/.s.monetdb.31868 -# cmdline opt monet_prompt = -# cmdline opt gdk_dbpath = /Users/joeri/monets/default/var/MonetDB/mTests_sql_test -# cmdline opt embedded_r = yes -# cmdline opt gdk_debug = 536870922 - -# 14:17:01 > -# 14:17:01 > "/usr/local/opt/python/bin/python2.7" "comment-auth.SQL.py" "comment-auth" -# 14:17:01 > +# 22:27:57 > +# 22:27:57 > "/usr/bin/python3.9" "comment-auth.SQL.py" "comment-auth" +# 22:27:57 > -# 14:17:01 > -# 14:17:01 > Mtimeout -timeout 60 mclient -lsql -ftest -tnone -Eutf-8 -i -e --host=/var/tmp/mtest-36372 --port=31868 --database=mTests_sql_test < "/Users/joeri/extr/monet/MonetDB/sql/test/Tests/comment-auth-superuser.sql" -# 14:17:01 > - - -# 14:17:02 > -# 14:17:02 > Mtimeout -timeout 60 mclient -lsql -ftest -tnone -Eutf-8 -i -e --host=/var/tmp/mtest-36372 --port=31868 --database=mTests_sql_test < "/Users/joeri/extr/monet/MonetDB/sql/test/Tests/comment-auth-a.sql" -# 14:17:02 > +# 22:27:57 > +# 22:27:57 > "Done." +# 22:27:57 > -MAPI = (user_a) /var/tmp/mtest-36372/.s.monetdb.31868 -QUERY = COMMENT ON SCHEMA schema_b IS 'set by user_a'; -ERROR = !COMMENT ON: insufficient privileges for user 'user_a' in schema 'schema_b' -CODE = 42000 - -# 16:46:51 > -# 16:46:51 > "Done." -# 16:46:51 > - diff --git a/sql/test/Tests/comment-auth.stable.out b/sql/test/Tests/comment-auth.stable.out --- a/sql/test/Tests/comment-auth.stable.out +++ b/sql/test/Tests/comment-auth.stable.out @@ -1,90 +1,12 @@ stdout of test 'comment-auth` in directory 'sql/test` itself: -# 14:17:01 > -# 14:17:01 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=31868" "--set" "mapi_usock=/var/tmp/mtest-36372/.s.monetdb.31868" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/joeri/monets/default/var/MonetDB/mTests_sql_test" "--set" "embedded_r=yes" -# 14:17:01 > - -# MonetDB 5 server v11.28.0 -# This is an unreleased version -# Serving database 'mTests_sql_test', using 8 threads -# Compiled for x86_64-apple-darwin17.3.0/64bit with 128bit integers -# Found 16.000 GiB available main-memory. -# Copyright (c) 1993-July 2008 CWI. -# Copyright (c) August 2008-2017 MonetDB B.V., all rights reserved -# Visit https://www.monetdb.org/ for further information -# Listening for connection requests on mapi:monetdb://dhcp-207.eduroam.cwi.nl:31868/ -# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-36372/.s.monetdb.31868 -# MonetDB/GIS module loaded -# MonetDB/SQL module loaded -# MonetDB/R module loaded - -# SQL catalog created, loading sql scripts once -# loading sql script: 09_like.sql -# loading sql script: 10_math.sql -# loading sql script: 11_times.sql -# loading sql script: 12_url.sql -# loading sql script: 13_date.sql -# loading sql script: 14_inet.sql -# loading sql script: 15_querylog.sql -# loading sql script: 16_tracelog.sql -# loading sql script: 17_temporal.sql -# loading sql script: 18_index.sql -# loading sql script: 20_vacuum.sql -# loading sql script: 21_dependency_functions.sql -# loading sql script: 22_clients.sql -# loading sql script: 23_skyserver.sql -# loading sql script: 25_debug.sql -# loading sql script: 26_sysmon.sql -# loading sql script: 27_rejects.sql -# loading sql script: 39_analytics.sql -# loading sql script: 39_analytics_hge.sql -# loading sql script: 40_geom.sql -# loading sql script: 40_json.sql -# loading sql script: 40_json_hge.sql -# loading sql script: 41_md5sum.sql -# loading sql script: 45_uuid.sql -# loading sql script: 46_profiler.sql -# loading sql script: 51_sys_schema_extension.sql -# loading sql script: 60_wlcr.sql -# loading sql script: 72_fits.sql -# loading sql script: 75_storagemodel.sql -# loading sql script: 80_statistics.sql -# loading sql script: 80_udf.sql -# loading sql script: 80_udf_hge.sql -# loading sql script: 90_generator.sql -# loading sql script: 90_generator_hge.sql -# loading sql script: 97_comments.sql -# loading sql script: 99_system.sql - -# 14:17:01 > -# 14:17:01 > "/usr/local/opt/python/bin/python2.7" "comment-auth.SQL.py" "comment-auth" -# 14:17:01 > +# 22:27:57 > +# 22:27:57 > "/usr/bin/python3.9" "comment-auth.SQL.py" "comment-auth" +# 22:27:57 > -# 14:17:01 > -# 14:17:01 > Mtimeout -timeout 60 mclient -lsql -ftest -tnone -Eutf-8 -i -e --host=/var/tmp/mtest-36372 --port=31868 --database=mTests_sql_test < "/Users/joeri/extr/monet/MonetDB/sql/test/Tests/comment-auth-superuser.sql" -# 14:17:01 > - -#CREATE USER user_a WITH PASSWORD 'user_a' NAME 'User A' SCHEMA sys; -#CREATE USER user_b WITH PASSWORD 'user_b' NAME 'User B' SCHEMA sys; -#CREATE ROLE role_b; -#GRANT role_b to user_b; -#CREATE SCHEMA schema_a AUTHORIZATION user_a; -#CREATE SCHEMA schema_b AUTHORIZATION role_b; -#CREATE TABLE schema_a.tab_a(i INTEGER); -#CREATE TABLE schema_b.tab_b(i INTEGER); +# 22:27:57 > +# 22:27:57 > "Done." +# 22:27:57 > -# 16:48:25 > -# 16:48:25 > Mtimeout -timeout 60 mclient -lsql -ftest -tnone -Eutf-8 -i -e --host=/var/tmp/mtest-70396 --port=35195 --database=mTests_sql_test < "/Users/joeri/extr/monet/MonetDB/sql/test/Tests/comment-auth-a.sql" -# 16:48:25 > - -SCHEMA schema_a 'set by super user' -SCHEMA schema_b 'set by super user' -SCHEMA schema_a 'set by user_a' -SCHEMA schema_b 'set by super user' - -# 16:48:25 > -# 16:48:25 > "Done." -# 16:48:25 > - diff --git a/sql/test/Tests/comment-dump.SQL.py b/sql/test/Tests/comment-dump.SQL.py --- a/sql/test/Tests/comment-dump.SQL.py +++ b/sql/test/Tests/comment-dump.SQL.py @@ -1,4 +1,4 @@ -import os, sys +import os, sys, re try: from MonetDBtesting import process except ImportError: @@ -7,31 +7,86 @@ except ImportError: with process.client('sql', stdin=open(os.path.join(os.getenv('TSTSRCDIR'), 'comment-dump.sql')), - stdout=process.PIPE, stderr=process.PIPE, - log=True) as c: + stdout=process.PIPE, stderr=process.PIPE) as c: out, err = c.communicate() - sys.stdout.write(out) - sys.stderr.write(err) + if re.search(r'^[^#\n]', out, re.M): + sys.stdout.write(out) + if re.search(r'^[^#\n]', err, re.M): + sys.stderr.write(err) + +dump1 = '''\ +START TRANSACTION; +CREATE SCHEMA "foo" AUTHORIZATION "monetdb"; +COMMENT ON SCHEMA "foo" IS 'foo foo'; +CREATE SEQUENCE "foo"."counter" AS INTEGER; +COMMENT ON SEQUENCE "foo"."counter" IS 'counting'; +SET SCHEMA "foo"; +CREATE TABLE "foo"."tab" ( + "i" INTEGER, + "j" DECIMAL(4,2) +); +COMMENT ON TABLE "foo"."tab" IS 'table'; +CREATE INDEX "idx" ON "foo"."tab" ("j", "i"); +COMMENT ON INDEX "foo"."idx" IS 'index on j'; +COMMENT ON COLUMN "foo"."tab"."i" IS 'ii'; +COMMENT ON COLUMN "foo"."tab"."j" IS 'jj'; +create view vivi as select * from tab; +COMMENT ON VIEW "foo"."vivi" IS 'phew'; +create function f() returns int begin return 42; end; +COMMENT ON FUNCTION "foo"."f"() IS '0 parms'; +create function f(i int) returns int begin return 43; end; +COMMENT ON FUNCTION "foo"."f"(INTEGER) IS '1 parm'; +create function f(i int, j int) returns int begin return 44; end; +COMMENT ON FUNCTION "foo"."f"(INTEGER, INTEGER) IS '2 parms'; +create function f(i int, j int, k int) returns int begin return 45; end; +create function f(i int, j int, k int, l int) returns int begin return 45; end; +create procedure g() begin delete from tab where false; end; +COMMENT ON PROCEDURE "foo"."g"() IS 'proc'; +ALTER SEQUENCE "foo"."counter" RESTART WITH 1 NO CYCLE; +SET SCHEMA "sys"; +COMMIT; +''' + +dump2 = '''\ +START TRANSACTION; +SET SCHEMA "foo"; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list