[Commits] Rev 4345: MDEV-7089: Test failures in main.failed_auth_unixsocket and plugins.unix_socket depending on environment in http://bazaar.launchpad.net/~maria-captains/maria/5.5

knielsen at knielsen-hq.org knielsen at knielsen-hq.org
Wed Nov 12 12:10:13 EET 2014


At http://bazaar.launchpad.net/~maria-captains/maria/5.5

------------------------------------------------------------
revno: 4345
revision-id: knielsen at knielsen-hq.org-20141112101013-t63ayylsk08ncgs3
parent: bar at mnogosearch.org-20141110140817-ba18dq3tuhku5k7b
committer: Kristian Nielsen <knielsen at knielsen-hq.org>
branch nick: mariadb-5.5
timestamp: Wed 2014-11-12 11:10:13 +0100
message:
  MDEV-7089: Test failures in main.failed_auth_unixsocket and plugins.unix_socket depending on environment
  
  The test cases had some --replace_result $USER USER. The problem is that the
  value of $USER can be anything, depending on the name of the unix account that
  runs the test suite. So random parts of the result can be errorneously
  replaced, causing test failures.
  
  Fix by making the replacements more specific, so they will match only the
  intended stuff regardless of the value of $USER.
=== modified file 'mysql-test/suite/plugins/t/unix_socket.test'
--- a/mysql-test/suite/plugins/t/unix_socket.test	2014-03-16 18:21:37 +0000
+++ b/mysql-test/suite/plugins/t/unix_socket.test	2014-11-12 10:10:13 +0000
@@ -12,11 +12,14 @@ eval install plugin unix_socket soname '
 --echo # with named user
 --echo #
 
---replace_result $USER USER
+--let $replace=create user $USER
+--replace_result $replace "create user USER"
 eval create user $USER identified via unix_socket;
 
 --write_file $MYSQLTEST_VARDIR/tmp/peercred_test.txt
---replace_result $USER USER
+--let $replace1=$USER at localhost
+--let $replace2=$USER@%
+--replace_result $replace1 "USER at localhost" $replace2 "USER@%"
 select user(), current_user(), database();
 EOF
 
@@ -31,7 +34,8 @@ EOF
 --error 1
 --exec $MYSQL_TEST -u foobar --plugin-dir=$plugindir < $MYSQLTEST_VARDIR/tmp/peercred_test.txt
 
---replace_result $USER USER
+--let $replace=drop user $USER
+--replace_result $replace "drop user USER"
 eval drop user $USER;
 
 --echo #

=== modified file 'mysql-test/t/failed_auth_unixsocket.test'
--- a/mysql-test/t/failed_auth_unixsocket.test	2014-03-24 19:02:00 +0000
+++ b/mysql-test/t/failed_auth_unixsocket.test	2014-11-12 10:10:13 +0000
@@ -16,11 +16,17 @@ change_user $USER;
 
 eval install plugin unix_socket soname '$AUTH_SOCKET_SO';
 
---replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT $USER USER
+# Make sure that the replace works, even if $USER is 'user' or something else
+# that matches other parts of the error message.
+--echo connect(localhost,USER,,test,MASTER_PORT,MASTER_SOCKET);
+--let $replace=Access denied for user '$USER'
+--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT $replace "Access denied for user 'USER'"
+--disable_query_log
 --error ER_ACCESS_DENIED_NO_PASSWORD_ERROR
 connect (fail,localhost,$USER);
+--enable_query_log
 
---replace_result $USER USER
+--replace_result  $replace "Access denied for user 'USER'"
 --error ER_ACCESS_DENIED_NO_PASSWORD_ERROR
 change_user $USER;
 



More information about the commits mailing list