php-src/ext/mysql/tests/003.phpt
Ulf Wendel 5a888bc9bd Trying to fix broken tests. The last set of files committed a few weeks ago
broke almost all tests. I'll try to merge the CVS with a working set of
tests from the mysqlnd development repository. With this first set of
changes most tests should run (and pass) again.

Note the additional environment variables in connect.inc that you can
use to control a test run.

More changes to come.
2007-07-11 11:12:10 +00:00

113 lines
2.3 KiB
PHP
Executable File

--TEST--
mysql_fetch_object
--SKIPIF--
<?php include 'skipif.inc'; ?>
--FILE--
<?php
include_once('connect.inc');
class class24 {
function __construct() {
echo __METHOD__ . "\n";
}
}
$data = array("one", "two", "three");
if (!$link = my_mysql_connect($host, $user, $passwd, $db, $port, $socket))
printf("[001] Cannot connect to the server using host=%s, user=%s, passwd=***, dbname=%s, port=%s, socket=%s\n",
$host, $user, $db, $port, $socket);
if (!mysql_query('DROP TABLE IF EXISTS test', $link))
printf("[002] [%d] %s\n", mysql_errno($link), mysql_error($link));
if (!mysql_query("CREATE TABLE test(a varchar(10))", $link))
printf("[003] [%d] %s\n", mysql_errno($link), mysql_error($link));
foreach ($data as $str) {
if (!mysql_query(sprintf("INSERT INTO test VALUES('%s')", $str), $link))
printf("[004 - %s] [%d] %s\n", $str, mysql_errno($link), mysql_error($link));
}
echo "==stdClass==\n";
if (!$res = mysql_query("SELECT a FROM test", $link))
printf("[005] [%d] %s\n", mysql_errno($link), mysql_error($link));
while ($obj = mysql_fetch_object($res)) {
var_dump($obj);
}
mysql_free_result($res);
echo "==class24==\n";
if (!$res = mysql_query("SELECT a FROM test", $link))
printf("[006] [%d] %s\n", mysql_errno($link), mysql_error($link));
while ($obj = mysql_fetch_object($res, 'class24')) {
var_dump($obj);
}
mysql_free_result($res);
mysql_close($link);
print "done!";
?>
--EXPECTF--
==stdClass==
object(stdClass)#%d (1) {
["a"]=>
string(3) "one"
}
object(stdClass)#%d (1) {
["a"]=>
string(3) "two"
}
object(stdClass)#%d (1) {
["a"]=>
string(5) "three"
}
==class24==
class24::__construct
object(class24)#%d (1) {
["a"]=>
string(3) "one"
}
class24::__construct
object(class24)#%d (1) {
["a"]=>
string(3) "two"
}
class24::__construct
object(class24)#%d (1) {
["a"]=>
string(5) "three"
}
done!
--UEXPECTF--
==stdClass==
object(stdClass)#%d (1) {
[u"a"]=>
unicode(3) "one"
}
object(stdClass)#%d (1) {
[u"a"]=>
unicode(3) "two"
}
object(stdClass)#%d (1) {
[u"a"]=>
unicode(5) "three"
}
==class24==
class24::__construct
object(class24)#%d (1) {
[u"a"]=>
unicode(3) "one"
}
class24::__construct
object(class24)#%d (1) {
[u"a"]=>
unicode(3) "two"
}
class24::__construct
object(class24)#%d (1) {
[u"a"]=>
unicode(5) "three"
}
done!