Changeset: b7461104bbba for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b7461104bbba
Added Files:
        sql/test/Users/Tests/changePasswordUser.SQL.py
        sql/test/Users/Tests/changePasswordUser.stable.err
        sql/test/Users/Tests/changePasswordUser.stable.out
        sql/test/Users/Tests/changeSchemaUser.SQL.py
        sql/test/Users/Tests/changeSchemaUser.stable.err
        sql/test/Users/Tests/changeSchemaUser.stable.out
        sql/test/Users/Tests/createSetUp.sql.src
        sql/test/Users/Tests/createSetUp.stable.err
        sql/test/Users/Tests/createSetUp.stable.out
        sql/test/Users/Tests/grantMonetdbToRegularUser.Bug-3771.SQL.py
        sql/test/Users/Tests/grantMonetdbToRegularUser.Bug-3771.stable.err
        sql/test/Users/Tests/grantMonetdbToRegularUser.Bug-3771.stable.out
        sql/test/Users/Tests/grantMonetdbToSchemaOwner.Bug-3771.SQL.py
        sql/test/Users/Tests/grantMonetdbToSchemaOwner.Bug-3771.stable.err
        sql/test/Users/Tests/grantMonetdbToSchemaOwner.Bug-3771.stable.out
        sql/test/Users/Tests/grantRole.Bug-3772.SQL.py
        sql/test/Users/Tests/grantRole.Bug-3772.stable.err
        sql/test/Users/Tests/grantRole.Bug-3772.stable.out
        sql/test/Users/Tests/renameUser.SQL.py
        sql/test/Users/Tests/renameUser.stable.err
        sql/test/Users/Tests/renameUser.stable.out
        sql/test/Users/Tests/role.SQL.py
        sql/test/Users/Tests/role.stable.err
        sql/test/Users/Tests/role.stable.out
        sql/test/Users/createSetUp.sql
Modified Files:
        sql/test/Users/Tests/All
Branch: default
Log Message:

Merge to default the new tests.


diffs (truncated from 1304 to 300 lines):

diff --git a/sql/test/Users/Tests/All b/sql/test/Users/Tests/All
--- a/sql/test/Users/Tests/All
+++ b/sql/test/Users/Tests/All
@@ -9,6 +9,14 @@ test_privs_p2
 privs2
 test_privs2_p1
 test_privs2_p2
-dropManyUsers.Bug-3764
+createSetUp
+changePasswordUser
+renameUser
+changeSchemaUser
+role
 grantAndRevokeUserLogedIN.Bug-3476
 grantRevokeAndGrantAgain.Bug-3765
+grantMonetdbToRegularUser.Bug-3771
+grantMonetdbToSchemaOwner.Bug-3771
+grantRole.Bug-3772
+dropManyUsers.Bug-3764
diff --git a/sql/test/Users/Tests/changePasswordUser.SQL.py 
b/sql/test/Users/Tests/changePasswordUser.SQL.py
new file mode 100644
--- /dev/null
+++ b/sql/test/Users/Tests/changePasswordUser.SQL.py
@@ -0,0 +1,52 @@
+###
+# Assess that the admin can change the password of a user.
+# Assess that a user can change its one password.
+###
+
+import os, sys
+try:
+    from MonetDBtesting import process
+except ImportError:
+    import process
+
+def client(user, passwd, input=None):
+    clt = process.client(lang='sql', user=user, passwd=passwd,
+                         stdin = process.PIPE,
+                         stdout = process.PIPE,
+                         stderr = process.PIPE,
+                         port = int(os.getenv('MAPIPORT')))
+    out, err = clt.communicate(input)
+    sys.stdout.write(out)
+    sys.stderr.write(err)
+
+sql_client = os.getenv('SQL_CLIENT')
+
+client('monetdb', 'monetdb', input = """\
+ALTER USER april  WITH UNENCRYPTED PASSWORD 'april2';
+""")
+
+# try to log in with old password
+client('april', 'april', input = """\
+select 'password april';
+""")
+
+# try to log in with new password
+client('april', 'april2', input = """\
+select 'password april2';
+ALTER USER SET UNENCRYPTED PASSWORD 'april5' USING OLD PASSWORD 'april3';
+ALTER USER SET UNENCRYPTED PASSWORD 'april' USING OLD PASSWORD 'april2';
+""")
+
+# try to log in with old password
+client('april', 'april2', input = """\
+select 'password april2 (wrong!!!)';
+""")
+
+
+# try to log in with the new password
+client('april', 'april', input = """\
+select 'password change successfully';
+""")
+
+
+
diff --git a/sql/test/Users/Tests/changePasswordUser.stable.err 
b/sql/test/Users/Tests/changePasswordUser.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/Users/Tests/changePasswordUser.stable.err
@@ -0,0 +1,44 @@
+stderr of test 'changePasswordUser` in directory 'sql/test/Users` itself:
+
+
+# 23:01:31 >  
+# 23:01:31 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36242" "--set" 
"mapi_usock=/var/tmp/mtest-7070/.s.monetdb.36242" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/home/vera/Desktop/MonetDB/BUILD/var/MonetDB/mTests_sql_test_Users" 
"--set" "mal_listing=0" "--set" "embedded_r=yes"
+# 23:01:31 >  
+
+# builtin opt  gdk_dbpath = 
/home/vera/Desktop/MonetDB/BUILD/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 = 36242
+# cmdline opt  mapi_usock = /var/tmp/mtest-7070/.s.monetdb.36242
+# cmdline opt  monet_prompt = 
+# cmdline opt  mal_listing = 2
+# cmdline opt  gdk_dbpath = 
/home/vera/Desktop/MonetDB/BUILD/var/MonetDB/mTests_sql_test_Users
+# cmdline opt  mal_listing = 0
+# cmdline opt  embedded_r = yes
+# cmdline opt  gdk_debug = 536870922
+
+# 23:01:32 >  
+# 23:01:32 >  "/usr/bin/python2" "changePasswordUser.SQL.py" 
"changePasswordUser"
+# 23:01:32 >  
+
+InvalidCredentialsException:checkCredentials:invalid credentials for user 
'april'
+
+MAPI  = (april) /var/tmp/mtest-7070/.s.monetdb.36242
+QUERY = ALTER USER SET UNENCRYPTED PASSWORD 'april5' USING OLD PASSWORD 
'april3';
+ERROR = !ALTER USER: Access denied
+InvalidCredentialsException:checkCredentials:invalid credentials for user 
'april'
+
+
+# 23:01:32 >  
+# 23:01:32 >  "Done."
+# 23:01:32 >  
+
diff --git a/sql/test/Users/Tests/changePasswordUser.stable.out 
b/sql/test/Users/Tests/changePasswordUser.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/Users/Tests/changePasswordUser.stable.out
@@ -0,0 +1,49 @@
+stdout of test 'changePasswordUser` in directory 'sql/test/Users` itself:
+
+
+# 23:01:31 >  
+# 23:01:31 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36242" "--set" 
"mapi_usock=/var/tmp/mtest-7070/.s.monetdb.36242" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/home/vera/Desktop/MonetDB/BUILD/var/MonetDB/mTests_sql_test_Users" 
"--set" "mal_listing=0" "--set" "embedded_r=yes"
+# 23:01:31 >  
+
+# MonetDB 5 server v11.22.0
+# This is an unreleased version
+# Serving database 'mTests_sql_test_Users', using 8 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs and 128bit 
integers dynamically linked
+# Found 3.746 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2015 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://buzu:36242/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-7070/.s.monetdb.36242
+# Start processing logs sql/sql_logs version 52200
+# Start reading the write-ahead log 'sql_logs/sql/log.9'
+# Finished reading the write-ahead log 'sql_logs/sql/log.9'
+# Finished processing logs sql/sql_logs
+# MonetDB/SQL module loaded
+# MonetDB/R   module loaded
+
+Ready.
+
+# 23:01:32 >  
+# 23:01:32 >  "/usr/bin/python2" "changePasswordUser.SQL.py" 
"changePasswordUser"
+# 23:01:32 >  
+
+#ALTER USER april  WITH UNENCRYPTED PASSWORD 'april2';
+#select 'password april2';
+% .L # table_name
+% single_value # name
+% char # type
+% 15 # length
+[ "password april2"    ]
+#ALTER USER SET UNENCRYPTED PASSWORD 'april' USING OLD PASSWORD 'april2';
+#select 'password change successfully';
+% .L # table_name
+% single_value # name
+% char # type
+% 28 # length
+[ "password change successfully"       ]
+
+# 23:01:32 >  
+# 23:01:32 >  "Done."
+# 23:01:32 >  
+
diff --git a/sql/test/Users/Tests/changeSchemaUser.SQL.py 
b/sql/test/Users/Tests/changeSchemaUser.SQL.py
new file mode 100644
--- /dev/null
+++ b/sql/test/Users/Tests/changeSchemaUser.SQL.py
@@ -0,0 +1,46 @@
+###
+# Assess that the schema of a user can be changed.
+# Assess that there is an error message if it tries to set an unexisting 
schema.
+# Assess that there is an error message if it tries to set a schema for an 
unexisting user.
+# Assess that a user that owns a schema cannot be dropped.
+###
+
+import os, sys
+try:
+    from MonetDBtesting import process
+except ImportError:
+    import process
+
+def client(user, passwd, input=None):
+    clt = process.client(lang='sql', user=user, passwd=passwd,
+                         stdin = process.PIPE,
+                         stdout = process.PIPE,
+                         stderr = process.PIPE,
+                         port = int(os.getenv('MAPIPORT')))
+    out, err = clt.communicate(input)
+    sys.stdout.write(out)
+    sys.stderr.write(err)
+
+sql_client = os.getenv('SQL_CLIENT')
+
+client('monetdb', 'monetdb', input = """\
+ALTER USER "april" SET SCHEMA library;
+ALTER USER "april2" SET SCHEMA library; --no such user
+ALTER USER "april" SET SCHEMA library2; --no such schema
+""")
+
+# This is the new april, so these operations should fail.
+client('april', 'april', input = """\
+SELECT * from bank.accounts; --no such table.
+SELECT * from library.orders; --not enough privileges.
+""")
+
+
+client('monetdb', 'monetdb', input = """\
+ALTER USER "april" SET SCHEMA bank;
+CREATE SCHEMA forAlice AUTHORIZATION april;
+DROP user april;
+""")
+
+
+
diff --git a/sql/test/Users/Tests/changeSchemaUser.stable.err 
b/sql/test/Users/Tests/changeSchemaUser.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/Users/Tests/changeSchemaUser.stable.err
@@ -0,0 +1,49 @@
+stderr of test 'changeSchemaUser` in directory 'sql/test/Users` itself:
+
+
+# 23:01:33 >  
+# 23:01:33 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36242" "--set" 
"mapi_usock=/var/tmp/mtest-7070/.s.monetdb.36242" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/home/vera/Desktop/MonetDB/BUILD/var/MonetDB/mTests_sql_test_Users" 
"--set" "mal_listing=0" "--set" "embedded_r=yes"
+# 23:01:33 >  
+
+# builtin opt  gdk_dbpath = 
/home/vera/Desktop/MonetDB/BUILD/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 = 36242
+# cmdline opt  mapi_usock = /var/tmp/mtest-7070/.s.monetdb.36242
+# cmdline opt  monet_prompt = 
+# cmdline opt  mal_listing = 2
+# cmdline opt  gdk_dbpath = 
/home/vera/Desktop/MonetDB/BUILD/var/MonetDB/mTests_sql_test_Users
+# cmdline opt  mal_listing = 0
+# cmdline opt  embedded_r = yes
+# cmdline opt  gdk_debug = 536870922
+
+# 23:01:33 >  
+# 23:01:33 >  "/usr/bin/python2" "changeSchemaUser.SQL.py" "changeSchemaUser"
+# 23:01:33 >  
+
+MAPI  = (monetdb) /var/tmp/mtest-7070/.s.monetdb.36242
+QUERY = ALTER USER "april2" SET SCHEMA library; --no such user
+ERROR = !ALTER USER: no such user 'april2'
+MAPI  = (monetdb) /var/tmp/mtest-7070/.s.monetdb.36242
+QUERY = ALTER USER "april" SET SCHEMA library2; --no such schema
+ERROR = !ALTER USER: no such schema 'library2'
+MAPI  = (april) /var/tmp/mtest-7070/.s.monetdb.36242
+QUERY = SELECT * from library.orders; --not enough privileges.
+ERROR = !SELECT: access denied for april to table 'library.orders'
+MAPI  = (monetdb) /var/tmp/mtest-7070/.s.monetdb.36242
+QUERY = DROP user april;
+ERROR = !DROP USER: 'april' owns a schema
+
+# 23:01:33 >  
+# 23:01:33 >  "Done."
+# 23:01:33 >  
+
diff --git a/sql/test/Users/Tests/changeSchemaUser.stable.out 
b/sql/test/Users/Tests/changeSchemaUser.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/Users/Tests/changeSchemaUser.stable.out
@@ -0,0 +1,43 @@
+stdout of test 'changeSchemaUser` in directory 'sql/test/Users` itself:
+
+
+# 23:01:33 >  
+# 23:01:33 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36242" "--set" 
"mapi_usock=/var/tmp/mtest-7070/.s.monetdb.36242" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/home/vera/Desktop/MonetDB/BUILD/var/MonetDB/mTests_sql_test_Users" 
"--set" "mal_listing=0" "--set" "embedded_r=yes"
+# 23:01:33 >  
+
+# MonetDB 5 server v11.22.0
+# This is an unreleased version
+# Serving database 'mTests_sql_test_Users', using 8 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs and 128bit 
integers dynamically linked
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to