]> granicus.if.org Git - php/commitdiff
Well, hacking around to cope with mysql version specific behaviour if using libmysql...
authorUlf Wendel <uw@php.net>
Tue, 20 Oct 2009 13:58:57 +0000 (13:58 +0000)
committerUlf Wendel <uw@php.net>
Tue, 20 Oct 2009 13:58:57 +0000 (13:58 +0000)
ext/mysqli/tests/071.phpt

index 4788a6091385895315cf0a8fb812503ab9d4190d..38bc46b84c717bd425fbf4204c34090027ed1861 100644 (file)
@@ -11,10 +11,28 @@ require_once('skipifconnectfailure.inc');
        require_once("connect.inc");
 
        $mysql = new my_mysqli($host, $user, $passwd, $db, $port, $socket);
+       $version = $mysql->server_version;
 
        var_dump($mysql->ping());
 
-       var_dump($mysql->kill($mysql->thread_id));
+       $ret = $mysql->kill($mysql->thread_id);
+       if ($IS_MYSQLND) {
+               if ($ret !== true){
+                       printf("[001] Expecting boolean/true got %s/%s\n", gettype($ret), var_export($ret, true));
+               }
+       } else {
+               /* libmysql return value seems to depend on server version */
+               if (($version >= 50123 || $version <= 40200) && $version != 50200) {
+                       /* TODO: find exact version */
+                       if ($ret !== true){
+                               printf("[001] Expecting boolean/true got %s/%s @\n", gettype($ret), var_export($ret, true), $version);
+                       }
+               } else {
+                       if ($ret !== false){
+                       printf("[001] Expecting boolean/false got %s/%s @\n", gettype($ret), var_export($ret, true), $version);
+                       }
+               }
+       }
 
        var_dump($mysql->ping());
 
@@ -24,7 +42,24 @@ require_once('skipifconnectfailure.inc');
 
        var_dump(mysqli_ping($mysql));
 
-       var_dump(mysqli_kill($mysql, mysqli_thread_id($mysql)));
+       $ret = $mysql->kill($mysql->thread_id);
+       if ($IS_MYSQLND) {
+               if ($ret !== true){
+                       printf("[002] Expecting boolean/true got %s/%s\n", gettype($ret), var_export($ret, true));
+               }
+       } else {
+               /* libmysql return value seems to depend on server version */
+               if (($version >= 50123 || $version <= 40200) && $version != 50200) {
+                       /* TODO: find exact version */
+                       if ($ret !== true){
+                               printf("[002] Expecting boolean/true got %s/%s @\n", gettype($ret), var_export($ret, true), $version);
+                       }
+               } else {
+                       if ($ret !== false){
+                       printf("[002] Expecting boolean/false got %s/%s @\n", gettype($ret), var_export($ret, true), $version);
+                       }
+               }
+       }
 
        var_dump(mysqli_ping($mysql));
 
@@ -33,9 +68,7 @@ require_once('skipifconnectfailure.inc');
 ?>
 --EXPECT--
 bool(true)
-bool(true)
 bool(false)
 bool(true)
-bool(true)
 bool(false)
 done!
\ No newline at end of file