]> granicus.if.org Git - php/commitdiff
Fix test
authorAndrey Hristov <andrey@php.net>
Wed, 26 Mar 2014 11:56:58 +0000 (13:56 +0200)
committerAndrey Hristov <andrey@php.net>
Wed, 26 Mar 2014 11:56:58 +0000 (13:56 +0200)
ext/mysqli/tests/mysqli_begin_transaction.phpt

index 99f87c18521bb89e084cbe361e48850142866f85..6c0508172fffc7245f2a5896bab33296ef56946a 100644 (file)
@@ -67,61 +67,50 @@ if (!have_innodb($link))
        var_dump($res->fetch_assoc());
 
        /* valid flags */
-       $flags = array(
-               MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT,
-               MYSQLI_TRANS_START_READ_WRITE,
-               MYSQLI_TRANS_START_READ_ONLY,
-               MYSQLI_TRANS_COR_AND_CHAIN, 
-               MYSQLI_TRANS_COR_AND_NO_CHAIN, 
-               MYSQLI_TRANS_COR_RELEASE, 
-               MYSQLI_TRANS_COR_NO_RELEASE);
+       $flags = array(MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT);
+
+       if (mysqli_get_server_version($link) >= 50605) {
+               $flags[] = MYSQLI_TRANS_START_READ_WRITE;
+               $flags[] = MYSQLI_TRANS_START_READ_ONLY;
+       }
 
        /* just coverage */
        foreach ($flags as $flag) {
                if (!mysqli_begin_transaction($link, $flag, sprintf("flag %d", $flag))) {
                        printf("[014] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
                }
-               if (!mysqli_query($link, 'SELECT * FROM test') ||
-                       !mysqli_rollback($link)) {
+               if (!mysqli_query($link, 'SELECT * FROM test') || !mysqli_rollback($link)) {
                        printf("[015] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
                }
        }
 
        /* does it really set a flag? */
-       if (mysqli_get_server_version($link) >= 50600) {
+       if (mysqli_get_server_version($link) >= 50605) {
                if (!mysqli_begin_transaction($link, MYSQLI_TRANS_START_READ_ONLY, sprintf("flag %d", $flag))) {
                        printf("[016] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
                }
-               if (!mysqli_query($link, "INSERT INTO test(id) VALUES (2)") ||
-                       !mysqli_commit($link)) {
+               if (mysqli_query($link, "INSERT INTO test(id) VALUES (2)")) {
                        printf("[017] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+               } else if (!mysqli_commit($link)) {
+                       printf("[018] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
                } else {
                        $res = mysqli_query($link, "SELECT id FROM test WHERE id = 2");
-                       var_dump($res->fetch_assoc());
                }
        }
        
-       /* invalid flag */
-       do {
-               $invalid_flag = mt_rand(0, 10000);
-       } while (isset(array_flip($flags)[$invalid_flag]));
-       /* we may or may not hit an invalid combination provoking a SQL error */
-       if (!mysqli_begin_transaction($link, $invalid_flag, sprintf("flag %d", $invalid_flag))) {
-               printf("[018] invalid_flag = %d [%d] %s\n", $invalid_flag, mysqli_errno($link), mysqli_error($link));
-       } else {
-               printf("[018] invalid_flag = %d [%d] %s\n", $invalid_flag, mysqli_errno($link), mysqli_error($link));
-       }
        if (!mysqli_begin_transaction($link, -1)) {
                        printf("[019] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
        }
 
-       /* does it like stupid names? */
-       if (!$link->begin_transaction(MYSQLI_TRANS_START_READ_WRITE, "*/trick me?\n\0"))
-               printf("[020] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+       if (mysqli_get_server_version($link) >= 50605) {
+               /* does it like stupid names? */
+               if (@!$link->begin_transaction(MYSQLI_TRANS_START_READ_WRITE, "*/trick me?\n\0"))
+                               printf("[020] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
 
-       /* does it like stupid names? */
-       if (!$link->begin_transaction(MYSQLI_TRANS_START_READ_WRITE, "az09"))
-               printf("[021] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+               /* does it like stupid names? */
+               if (@!$link->begin_transaction(MYSQLI_TRANS_START_READ_WRITE, "az09"))
+                       printf("[021] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+       }
 
        print "done!";
 ?>
@@ -131,11 +120,7 @@ if (!have_innodb($link))
 ?>
 --EXPECTF--
 NULL
-[017] [1792] %s
-[018] invalid_flag = %d [%d]%A
 
-Warning: mysqli_begin_transaction(): Invalid value for parameter flags (-1) in /work/dev/php/php-5.5/ext/mysqli/tests/mysqli_begin_transaction.php on line 98
+Warning: mysqli_begin_transaction(): Invalid value for parameter flags (-1) in %s on line %d
 [019] [%d]%A
-
-Warning: mysqli::begin_transaction(): Transaction name truncated. Must be only [0-9A-Za-z\-_=]+ in /work/dev/php/php-5.5/ext/mysqli/tests/mysqli_begin_transaction.php on line 103
 done!
\ No newline at end of file