uw Wed Oct 10 09:55:28 2007 UTC
Added files: (Branch: PHP_5_3)
/php-src/ext/mysql/tests mysql_max_links.phpt
mysql_max_persistent.phpt
mysql_num_fields.phpt mysql_num_rows.phpt
mysql_pconn_disable.phpt
mysql_pconn_kill.phpt
mysql_pconn_max_links.phpt
mysql_pconn_reuse.phpt mysql_pconnect.phpt
mysql_phpinfo.phpt mysql_ping.phpt
Log:
Second last set of new tests for ext/mysql
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_max_links.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_max_links.phpt
+++ php-src/ext/mysql/tests/mysql_max_links.phpt
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_max_persistent.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_max_persistent.phpt
+++ php-src/ext/mysql/tests/mysql_max_persistent.phpt
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_num_fields.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_num_fields.phpt
+++ php-src/ext/mysql/tests/mysql_num_fields.phpt
--TEST--
mysql_num_fields()
--SKIPIF--
<?php require_once('skipif.inc'); ?>
<?php require_once('skipifemb.inc'); ?>
--FILE--
<?php
include "connect.inc";
$tmp = NULL;
$link = NULL;
if (!is_null($tmp = @mysql_num_fields()))
printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
if (false !== ($tmp = @mysql_num_fields($link)))
printf("[002] Expecting boolean/false, got %s/%s\n", gettype($tmp),
$tmp);
require('table.inc');
function func_test_mysql_num_fields($link, $query, $expected, $offset,
$test_free = false) {
if (!($res = mysql_query($query, $link))) {
printf("[%03d] [%d] %s\n", $offset, mysql_errno($link),
mysql_error($link));
return;
}
if ($expected !== ($tmp = mysql_num_fields($res)))
printf("[%03d] Expecting %s/%d, got %s/%d\n", $offset + 1,
gettype($expected), $expected,
gettype($tmp), $tmp);
mysql_free_result($res);
if ($test_free && (false !== ($tmp = mysql_num_fields($res))))
printf("[%03d] Expecting boolean/false, got %s/%s\n", $offset + 2,
gettype($tmp), $tmp);
}
func_test_mysql_num_fields($link, "SELECT 1 AS a", 1, 5);
func_test_mysql_num_fields($link, "SELECT id, label FROM test", 2, 10);
func_test_mysql_num_fields($link, "SELECT 1 AS a, NULL AS b, 'foo' AS c",
3, 15);
func_test_mysql_num_fields($link, "SELECT id FROM test", 1, 20, true);
mysql_close($link);
print "done!";
?>
--EXPECTF--
Warning: mysql_num_fields(): %d is not a valid MySQL result resource in %s on
line %d
done!
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_num_rows.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_num_rows.phpt
+++ php-src/ext/mysql/tests/mysql_num_rows.phpt
--TEST--
mysql_num_rows()
--SKIPIF--
<?php require_once('skipif.inc'); ?>
<?php require_once('skipifemb.inc'); ?>
--FILE--
<?php
include "connect.inc";
$tmp = NULL;
$link = NULL;
if (!is_null($tmp = @mysql_num_rows()))
printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
if (false !== ($tmp = @mysql_num_rows($link)))
printf("[002] Expecting boolean/false, got %s/%s\n", gettype($tmp),
$tmp);
require('table.inc');
function func_test_mysql_num_rows($link, $query, $expected, $offset,
$test_free = false) {
if (!$res = mysql_query($query, $link)) {
printf("[%03d] [%d] %s\n", $offset, mysql_errno($link),
mysql_error($link));
return;
}
if ($expected !== ($tmp = mysql_num_rows($res)))
printf("[%03d] Expecting %s/%d, got %s/%d\n", $offset + 1,
gettype($expected), $expected,
gettype($tmp), $tmp);
mysql_free_result($res);
if ($test_free && (false !== ($tmp = mysql_num_rows($res))))
printf("[%03d] Expecting boolean/false, got %s/%s\n", $offset + 2,
gettype($tmp), $tmp);
}
func_test_mysql_num_rows($link, "SELECT 1 AS a", 1, 5);
func_test_mysql_num_rows($link, "SHOW VARIABLES LIKE '%nixnutz%'", 0, 10);
func_test_mysql_num_rows($link, "INSERT INTO test(id, label) VALUES (100,
'z')", false, 15);
func_test_mysql_num_rows($link, "SELECT id FROM test LIMIT 2", 2, 20, true);
if ($res = mysql_query('SELECT COUNT(id) AS num FROM test', $link)) {
$row = mysql_fetch_assoc($res);
mysql_free_result($res);
func_test_mysql_num_rows($link, "SELECT id, label FROM test",
(int)$row['num'], 25);
} else {
printf("[030] [%d] %s\n", mysql_errno($link), mysql_error($link));
}
mysql_close($link);
print "done!";
?>
--EXPECTF--
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result
resource in %s on line %d
Warning: mysql_free_result(): supplied argument is not a valid MySQL result
resource in %s on line %d
Warning: mysql_num_rows(): %d is not a valid MySQL result resource in %s on
line %d
done!
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_pconn_disable.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_pconn_disable.phpt
+++ php-src/ext/mysql/tests/mysql_pconn_disable.phpt
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_pconn_kill.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_pconn_kill.phpt
+++ php-src/ext/mysql/tests/mysql_pconn_kill.phpt
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_pconn_max_links.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_pconn_max_links.phpt
+++ php-src/ext/mysql/tests/mysql_pconn_max_links.phpt
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_pconn_reuse.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_pconn_reuse.phpt
+++ php-src/ext/mysql/tests/mysql_pconn_reuse.phpt
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_pconnect.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_pconnect.phpt
+++ php-src/ext/mysql/tests/mysql_pconnect.phpt
--TEST--
mysql_pconnect()
--SKIPIF--
<?php require_once('skipif.inc'); ?>
<?php require_once('skipifemb.inc'); ?>
--FILE--
<?php
include "connect.inc";
$tmp = NULL;
$link = NULL;
// mysql_pconnect ( [string server [, string username [, string password [,
bool new_link [, int client_flags]]]]] )
if (NULL !== ($tmp = @mysql_pconnect($link, $link, $link, $link, $link,
$link)))
printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
$myhost = (is_null($socket)) ? ((is_null($port)) ? $host : $host . ':' .
$port) : $host . ':' . $socket;
if (!$link = mysql_pconnect($myhost, $user, $passwd, true))
printf("[002] Cannot connect to the server using host=%s/%s, user=%s,
passwd=***, dbname=%s, port=%s, socket=%s\n",
$host, $myhost, $user, $db, $port, $socket);
mysql_close($link);
if ($link = mysql_pconnect($myhost, $user . 'unknown_really', $passwd .
'non_empty', true))
printf("[003] Can connect to the server using host=%s/%s, user=%s,
passwd=***non_empty, dbname=%s, port=%s, socket=%s\n",
$host, $myhost, $user . 'unknown_really', $db, $port, $socket);
if (false !== $link)
printf("[004] Expecting boolean/false, got %s/%s\n", gettype($link),
$link);
// Run the following tests without an anoynmous MySQL user and use a
password for the test user!
ini_set('mysql.default_socket', $socket);
if (!is_resource($link = mysql_pconnect($host, $user, $passwd, true))) {
printf("[005] Usage of mysql.default_socket failed\n") ;
} else {
mysql_close($link);
}
if (!ini_get('sql.safe_mode')) {
ini_set('mysql.default_port', $port);
if (!is_resource($link = mysql_pconnect($host, $user, $passwd, true))) {
printf("[006] Usage of mysql.default_port failed\n") ;
} else {
mysql_close($link);
}
ini_set('mysql.default_password', $passwd);
if (!is_resource($link = mysql_pconnect($myhost, $user))) {
printf("[007] Usage of mysql.default_password failed\n") ;
} else {
mysql_close($link);
}
ini_set('mysql.default_user', $user);
if (!is_resource($link = mysql_pconnect($myhost))) {
printf("[008] Usage of mysql.default_user failed\n");
} else {
mysql_close($link);
}
ini_set('mysql.default_host', $myhost);
if (!is_resource($link = mysql_pconnect())) {
printf("[009] Usage of mysql.default_host failed\n") ;
} else {
mysql_close($link);
}
}
print "done!";
?>
--EXPECTF--
Warning: mysql_pconnect(): Access denied for user '%s'@'%s' (using password:
YES) in %s on line %d
done!
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_phpinfo.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_phpinfo.phpt
+++ php-src/ext/mysql/tests/mysql_phpinfo.phpt
--TEST--
phpinfo() mysql section
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
include_once("connect.inc");
@ob_clean();
ob_start();
phpinfo();
$phpinfo = ob_get_contents();
ob_end_clean();
/* all versions should at least dump this minimum information */
if (!stristr($phpinfo, "mysql support"))
printf("[001] ext/mysql should have exposed itself.\n");
if (!stristr($phpinfo, "client api library version"))
printf("[002] ext/mysql should have exposed the library version.\n");
if (!stristr($phpinfo, "mysql.default_host"))
printf("[003] php.ini setting mysql.default_host not shown.\n");
if (!stristr($phpinfo, "mysql.default_port"))
printf("[004] php.ini setting mysql.default_port not shown.\n");
if (!stristr($phpinfo, "mysql.default_password"))
printf("[005] php.ini setting mysql.default_password not shown.\n");
if (!stristr($phpinfo, "mysql.default_socket"))
printf("[006] php.ini setting mysql.default_socket not shown.\n");
if (!stristr($phpinfo, "mysql.default_user"))
printf("[007] php.ini setting mysql.default_user not shown.\n");
if (!stristr($phpinfo, "mysql.max_links"))
printf("[008] php.ini setting mysql.max_links not shown.\n");
if (!stristr($phpinfo, "mysql.max_persistent"))
printf("[009] php.ini setting mysql.max_persistent not shown.\n");
if (!stristr($phpinfo, "mysql.connect_timeout"))
printf("[010] php.ini setting mysql.connect_timeout not shown.\n");
if (!stristr($phpinfo, "mysql.allow_persistent"))
printf("[011] php.ini setting mysql.allow_persistent not shown.\n");
if ($IS_MYSQLND) {
$expected = array(
'client statistics',
'bytes_sent', 'bytes_received', 'packets_sent',
'packets_received',
'protocol_overhead_in', 'protocol_overhead_out',
'result_set_queries',
'non_result_set_queries', 'no_index_used', 'bad_index_used',
'buffered_sets', 'unbuffered_sets', 'ps_buffered_sets',
'ps_unbuffered_sets',
'flushed_normal_sets', 'flushed_ps_sets',
'rows_fetched_from_server',
'rows_fetched_from_client', 'rows_skipped',
'copy_on_write_saved',
'copy_on_write_performed', 'command_buffer_too_small',
'connect_success',
'connect_failure', 'connection_reused', 'explicit_close',
'implicit_close',
'disconnect_close', 'in_middle_of_command_close',
'explicit_free_result',
'implicit_free_result', 'explicit_stmt_close',
'implicit_stmt_close',
'put_hits', 'put_misses', 'get_hits', 'get_misses',
'size', 'free_items', 'references', 'mysql.cache_size',
);
foreach ($expected as $k => $entry)
if (!stristr($phpinfo, $entry))
printf("[012] Could not find entry for '%s'\n", $entry);
}
print "done!";
?>
--EXPECTF--
done!
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/tests/mysql_ping.phpt?view=markup&rev=1.1
Index: php-src/ext/mysql/tests/mysql_ping.phpt
+++ php-src/ext/mysql/tests/mysql_ping.phpt
--TEST--
mysql_ping()
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
include_once "connect.inc";
$tmp = NULL;
$link = NULL;
require('table.inc');
if (!is_null($tmp = @mysql_ping($link, $link)))
printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
var_dump(mysql_ping($link));
// provoke an error to check if mysql_ping resets it
$res = mysql_query('SELECT * FROM unknown_table', $link);
if (!($errno = mysql_errno($link)))
printf("[002] Statement should have caused an error\n");
var_dump(mysql_ping($link));
if ($errno === mysql_errno($link))
printf("[003] Error codes should have been reset\n");
mysql_close($link);
if (false !== ($tmp = mysql_ping($link)))
printf("[004] Expecting boolean/false, got %s/%s\n", gettype($tmp),
$tmp);
print "done!";
?>
--EXPECTF--
bool(true)
bool(true)
Warning: mysql_ping(): %d is not a valid MySQL-Link resource in %s on line %d
done!
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php