Annotation of embedaddon/php/ext/mysqli/tests/mysqli_stmt_reset.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: mysqli_stmt_reset()
! 3: --SKIPIF--
! 4: <?php
! 5: require_once('skipif.inc');
! 6: require_once('skipifemb.inc');
! 7: require_once('skipifconnectfailure.inc');
! 8: ?>
! 9: --FILE--
! 10: <?php
! 11: require_once("connect.inc");
! 12:
! 13: // Note: No SQL tests here! We can expand one of the *fetch()
! 14: // tests to a generic SQL test, if we ever need that.
! 15: // We would duplicate the SQL test cases if we have it here and in one of the
! 16: // fetch tests, because the fetch tests would have to call prepare/execute etc.
! 17: // anyway.
! 18:
! 19: $tmp = NULL;
! 20: $link = NULL;
! 21:
! 22: if (!is_null($tmp = @mysqli_stmt_reset()))
! 23: printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
! 24:
! 25: if (!is_null($tmp = @mysqli_stmt_reset($link)))
! 26: printf("[002] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
! 27:
! 28: require('table.inc');
! 29:
! 30: if (!$stmt = mysqli_stmt_init($link))
! 31: printf("[003] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 32:
! 33: if (NULL !== ($tmp = mysqli_stmt_reset($stmt)))
! 34: printf("[004] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
! 35:
! 36: if (true !== ($tmp = mysqli_stmt_prepare($stmt, 'SELECT id FROM test')))
! 37: printf("[005] Expecting boolean/true, got %s/%s, [%d] %s\n",
! 38: gettype($tmp), $tmp, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
! 39:
! 40: if (true !== ($tmp = mysqli_stmt_reset($stmt)))
! 41: printf("[006] Expecting boolean/true, got %s/%s\n", gettype($tmp), $tmp);
! 42:
! 43: if (true !== ($tmp = mysqli_stmt_execute($stmt)))
! 44: printf("[007] Expecting boolean/true, got %s/%s\n", gettype($tmp), $tmp);
! 45:
! 46: $id = null;
! 47: if (!mysqli_stmt_bind_result($stmt, $id))
! 48: printf("[008] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
! 49:
! 50: if (!mysqli_stmt_fetch($stmt))
! 51: printf("[009] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
! 52:
! 53: var_dump($id);
! 54: mysqli_stmt_close($stmt);
! 55: if (!$stmt = mysqli_stmt_init($link))
! 56: printf("[010] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 57:
! 58: if (!mysqli_query($link, "DROP TABLE IF EXISTS test"))
! 59: printf("[011] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 60:
! 61: if (!mysqli_query($link, "CREATE TABLE test(id INT NOT NULL AUTO_INCREMENT, label BLOB, PRIMARY KEY(id))"))
! 62: printf("[012] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 63:
! 64: if (!mysqli_stmt_prepare($stmt, "INSERT INTO test(label) VALUES (?)"))
! 65: printf("[013] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
! 66:
! 67: $label = null;
! 68: if (!mysqli_stmt_bind_param($stmt, "b", $label))
! 69: printf("[014] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
! 70:
! 71: $label = 'abc';
! 72: for ($i = 0; $i < 10; $i++) {
! 73: if (!mysqli_stmt_send_long_data($stmt, 0, $label))
! 74: printf("[015 - %d] [%d] %s\n", $i, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
! 75: }
! 76:
! 77: if (!mysqli_stmt_reset($stmt))
! 78: printf("[016] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
! 79:
! 80: if (!mysqli_stmt_execute($stmt))
! 81: printf("[017] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
! 82:
! 83: if (!$res = mysqli_query($link, "SELECT label FROM test"))
! 84: printf("[018] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 85:
! 86: if (!$row = mysqli_fetch_assoc($res))
! 87: printf("[019] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 88:
! 89: mysqli_free_result($res);
! 90:
! 91: if ($row['label'] != '')
! 92: printf("[020] Expecting empty string, got string/%s\n", $row['label']);
! 93:
! 94: mysqli_stmt_close($stmt);
! 95:
! 96: if (NULL !== ($tmp = mysqli_stmt_reset($stmt)))
! 97: printf("[021] Expecting NULL, got %s/%s\n");
! 98:
! 99: mysqli_close($link);
! 100: print "done!";
! 101: ?>
! 102: --CLEAN--
! 103: <?php
! 104: require_once("clean_table.inc");
! 105: ?>
! 106: --EXPECTF--
! 107: Warning: mysqli_stmt_reset(): invalid object or resource mysqli_stmt
! 108: in %s on line %d
! 109: int(1)
! 110:
! 111: Warning: mysqli_stmt_reset(): Couldn't fetch mysqli_stmt in %s on line %d
! 112: done!
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>