uw              Mon Jul 23 12:28:56 2007 UTC

  Added files:                 
    /php-src/ext/mysqli/tests   mysqli_fetch_field_direct_oo.phpt 
                                mysqli_fetch_field_direct.phpt 
                                mysqli_fetch_field_oo.phpt 
                                mysqli_fetch_field.phpt 
                                mysqli_fetch_fields.phpt 
  Log:
  Tests that check mysqli_fetch_field(), mysqli_fetch_field_direct() and
  retrieve metadata
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/mysqli/tests/mysqli_fetch_field_direct_oo.phpt?view=markup&rev=1.1
Index: php-src/ext/mysqli/tests/mysqli_fetch_field_direct_oo.phpt
+++ php-src/ext/mysqli/tests/mysqli_fetch_field_direct_oo.phpt
--TEST--
$res->fetch_field_direct(s)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
<?php require_once('skipifemb.inc'); ?>
--FILE--
<?php
        include "connect.inc";

        $tmp    = NULL;
        $link   = NULL;

        $mysqli = new mysqli();
        $res = @new mysqli_result($mysqli);
        if (!is_null($tmp = @$res->fetch_field_direct()))
                printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        require('table.inc');

        if (!$mysqli = new mysqli($host, $user, $passwd, $db, $port, $socket))
                printf("[002] Cannot connect to the server using host=%s, 
user=%s, passwd=***, dbname=%s, port=%s, socket=%s\n",
                        $host, $user, $db, $port, $socket);

        if (!$res = $mysqli->query("SELECT id AS ID, label FROM test AS TEST 
ORDER BY id LIMIT 1")) {
                printf("[003] [%d] %s\n", mysqli_errno($link), 
mysqli_error($link));
        }

        if (!is_null($tmp = @$res->fetch_field_direct()))
                printf("[004] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        if (!is_null($tmp = @$res->fetch_field_direct($link)))
                printf("[005] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        if (!is_null($tmp = @$res->fetch_field_direct($link, $link)))
                printf("[006] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        var_dump($res->fetch_field_direct(-1));
        var_dump($res->fetch_field_direct(0));
        var_dump($res->fetch_field_direct(2));

        $res->free_result();

        if (NULL !== ($tmp = $res->fetch_field_direct(0)))
                printf("[007] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        $mysqli->close();
        print "done!";
?>
--EXPECTF--
Warning: mysqli_result::fetch_field_direct(): Field offset is invalid for 
resultset in %s on line %d
bool(false)
object(stdClass)#%d (11) {
  ["name"]=>
  string(2) "ID"
  ["orgname"]=>
  string(2) "id"
  ["table"]=>
  string(4) "TEST"
  ["orgtable"]=>
  string(4) "test"
  ["def"]=>
  string(0) ""
  ["max_length"]=>
  int(%d)
  ["length"]=>
  int(11)
  ["charsetnr"]=>
  int(%d)
  ["flags"]=>
  int(%d)
  ["type"]=>
  int(%d)
  ["decimals"]=>
  int(%d)
}

Warning: mysqli_result::fetch_field_direct(): Field offset is invalid for 
resultset in %s on line %d
bool(false)

Warning: mysqli_result::fetch_field_direct(): Couldn't fetch mysqli_result in 
%s on line %d
done!
--UEXPECTF--
Warning: mysqli_result::fetch_field_direct(): Field offset is invalid for 
resultset in %s on line %d
bool(false)
object(stdClass)#%d (11) {
  [u"name"]=>
  unicode(2) "ID"
  [u"orgname"]=>
  unicode(2) "id"
  [u"table"]=>
  unicode(4) "TEST"
  [u"orgtable"]=>
  unicode(4) "test"
  [u"def"]=>
  unicode(0) ""
  [u"max_length"]=>
  int(%d)
  [u"length"]=>
  int(%d)
  [u"charsetnr"]=>
  int(%d)
  [u"flags"]=>
  int(%d)
  [u"type"]=>
  int(%d)
  [u"decimals"]=>
  int(%d)
}

Warning: mysqli_result::fetch_field_direct(): Field offset is invalid for 
resultset in %s on line %d
bool(false)

Warning: mysqli_result::fetch_field_direct(): Couldn't fetch mysqli_result in 
%s on line %d
done!
http://cvs.php.net/viewvc.cgi/php-src/ext/mysqli/tests/mysqli_fetch_field_direct.phpt?view=markup&rev=1.1
Index: php-src/ext/mysqli/tests/mysqli_fetch_field_direct.phpt
+++ php-src/ext/mysqli/tests/mysqli_fetch_field_direct.phpt
--TEST--
mysqli_fetch_field_direct()
--SKIPIF--
<?php require_once('skipif.inc'); ?>
<?php require_once('skipifemb.inc'); ?>
--FILE--
<?php
        include "connect.inc";

        $tmp    = NULL;
        $link   = NULL;

        if (!is_null($tmp = @mysqli_fetch_field_direct()))
                printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        if (!is_null($tmp = @mysqli_fetch_field_direct($link)))
                printf("[002] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        if (!is_null($tmp = @mysqli_fetch_field_direct($link, $link)))
                printf("[003] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        require('table.inc');

        if (!$res = mysqli_query($link, "SELECT id AS ID, label FROM test AS 
TEST ORDER BY id LIMIT 1")) {
                printf("[004] [%d] %s\n", mysqli_errno($link), 
mysqli_error($link));
        }

        var_dump(mysqli_fetch_field_direct($res, -1));
        var_dump(mysqli_fetch_field_direct($res, 0));
        var_dump(mysqli_fetch_field_direct($res, 2));

        mysqli_free_result($res);

        if (NULL !== ($tmp = mysqli_fetch_field_direct($res, 0)))
                printf("Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);

        mysqli_close($link);
        print "done!";
?>
--EXPECTF--
Warning: mysqli_fetch_field_direct(): Field offset is invalid for resultset in 
%s on line %d
bool(false)
object(stdClass)#%d (11) {
  ["name"]=>
  string(2) "ID"
  ["orgname"]=>
  string(2) "id"
  ["table"]=>
  string(4) "TEST"
  ["orgtable"]=>
  string(4) "test"
  ["def"]=>
  string(0) ""
  ["max_length"]=>
  int(%d)
  ["length"]=>
  int(%d)
  ["charsetnr"]=>
  int(%d)
  ["flags"]=>
  int(%d)
  ["type"]=>
  int(%d)
  ["decimals"]=>
  int(%d)
}

Warning: mysqli_fetch_field_direct(): Field offset is invalid for resultset in 
%s on line %d
bool(false)

Warning: mysqli_fetch_field_direct(): Couldn't fetch mysqli_result in %s on 
line %d
done!
--UEXPECTF--
Warning: mysqli_fetch_field_direct(): Field offset is invalid for resultset in 
%s on line %d
bool(false)
object(stdClass)#%d (11) {
  [u"name"]=>
  unicode(2) "ID"
  [u"orgname"]=>
  unicode(2) "id"
  [u"table"]=>
  unicode(4) "TEST"
  [u"orgtable"]=>
  unicode(4) "test"
  [u"def"]=>
  unicode(0) ""
  [u"max_length"]=>
  int(%d)
  [u"length"]=>
  int(%d)
  [u"charsetnr"]=>
  int(%d)
  [u"flags"]=>
  int(%d)
  [u"type"]=>
  int(%d)
  [u"decimals"]=>
  int(%d)
}

Warning: mysqli_fetch_field_direct(): Field offset is invalid for resultset in 
%s on line %d
bool(false)

Warning: mysqli_fetch_field_direct(): Couldn't fetch mysqli_result in %s on 
line %d
done!
http://cvs.php.net/viewvc.cgi/php-src/ext/mysqli/tests/mysqli_fetch_field_oo.phpt?view=markup&rev=1.1
Index: php-src/ext/mysqli/tests/mysqli_fetch_field_oo.phpt
+++ php-src/ext/mysqli/tests/mysqli_fetch_field_oo.phpt
--TEST--
mysqli_fetch_field()
--SKIPIF--
<?php require_once('skipif.inc'); ?>
<?php require_once('skipifemb.inc'); ?>
--FILE--
<?php
        include "connect.inc";

        $tmp    = NULL;
        $link   = NULL;

        // Note: no SQL type tests, internally the same function gets used as 
for mysqli_fetch_array() which does a lot of SQL type test
        $mysqli = new mysqli();
        $res = @new mysqli_result($mysqli);
        if (!is_null($tmp = @$res->fetch_field()))
                printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        require('table.inc');
        if (!$mysqli = new mysqli($host, $user, $passwd, $db, $port, $socket))
                printf("[002] Cannot connect to the server using host=%s, 
user=%s, passwd=***, dbname=%s, port=%s, socket=%s\n",
                        $host, $user, $db, $port, $socket);

        if (!$res = $mysqli->query("SELECT id AS ID, label FROM test AS TEST 
ORDER BY id LIMIT 1")) {
                printf("[003] [%d] %s\n", $mysqli->errno, $mysqli->error);
        }

        if (!is_null($tmp = @$res->fetch_field($link)))
                printf("[003] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        while ($tmp = $res->fetch_field())
                var_dump($tmp);
        var_dump($tmp);

        $res->free_result();

        if (NULL !== ($tmp = $res->fetch_field()))
                printf("[004] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        $mysqli->close();
        print "done!";
?>
--EXPECTF--
object(stdClass)#%d (11) {
  ["name"]=>
  string(2) "ID"
  ["orgname"]=>
  string(2) "id"
  ["table"]=>
  string(4) "TEST"
  ["orgtable"]=>
  string(4) "test"
  ["def"]=>
  string(0) ""
  ["max_length"]=>
  int(1)
  ["length"]=>
  int(11)
  ["charsetnr"]=>
  int(63)
  ["flags"]=>
  int(49155)
  ["type"]=>
  int(3)
  ["decimals"]=>
  int(0)
}
object(stdClass)#%d (11) {
  ["name"]=>
  string(5) "label"
  ["orgname"]=>
  string(5) "label"
  ["table"]=>
  string(4) "TEST"
  ["orgtable"]=>
  string(4) "test"
  ["def"]=>
  string(0) ""
  ["max_length"]=>
  int(1)
  ["length"]=>
  int(1)
  ["charsetnr"]=>
  int(8)
  ["flags"]=>
  int(0)
  ["type"]=>
  int(254)
  ["decimals"]=>
  int(0)
}
bool(false)

Warning: mysqli_result::fetch_field(): Couldn't fetch mysqli_result in %s on 
line %d
done!
--UEXPECTF--
object(stdClass)#%d (11) {
  [u"name"]=>
  unicode(2) "ID"
  [u"orgname"]=>
  unicode(2) "id"
  [u"table"]=>
  unicode(4) "TEST"
  [u"orgtable"]=>
  unicode(4) "test"
  [u"def"]=>
  unicode(0) ""
  [u"max_length"]=>
  int(%d)
  [u"length"]=>
  int(%d)
  [u"charsetnr"]=>
  int(%d)
  [u"flags"]=>
  int(%d)
  [u"type"]=>
  int(%d)
  [u"decimals"]=>
  int(0)
}
object(stdClass)#%d (11) {
  [u"name"]=>
  unicode(5) "label"
  [u"orgname"]=>
  unicode(5) "label"
  [u"table"]=>
  unicode(4) "TEST"
  [u"orgtable"]=>
  unicode(4) "test"
  [u"def"]=>
  unicode(0) ""
  [u"max_length"]=>
  int(%d)
  [u"length"]=>
  int(%d)
  [u"charsetnr"]=>
  int(%d)
  [u"flags"]=>
  int(%d)
  [u"type"]=>
  int(%d)
  [u"decimals"]=>
  int(0)
}
bool(false)

Warning: mysqli_result::fetch_field(): Couldn't fetch mysqli_result in %s on 
line %d
done!

http://cvs.php.net/viewvc.cgi/php-src/ext/mysqli/tests/mysqli_fetch_field.phpt?view=markup&rev=1.1
Index: php-src/ext/mysqli/tests/mysqli_fetch_field.phpt
+++ php-src/ext/mysqli/tests/mysqli_fetch_field.phpt
--TEST--
mysqli_fetch_field()
--SKIPIF--
<?php require_once('skipif.inc'); ?>
<?php require_once('skipifemb.inc'); ?>
--FILE--
<?php
        include "connect.inc";

        $tmp    = NULL;
        $link   = NULL;

        // Note: no SQL type tests, internally the same function gets used as 
for mysqli_fetch_array() which does a lot of SQL type test
        if (!is_null($tmp = @mysqli_fetch_field()))
                printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        if (!is_null($tmp = @mysqli_fetch_field($link)))
                printf("[002] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        require('table.inc');
        if (!$res = mysqli_query($link, "SELECT id AS ID, label FROM test AS 
TEST ORDER BY id LIMIT 1")) {
                printf("[003] [%d] %s\n", mysqli_errno($link), 
mysqli_error($link));
        }

        while ($tmp = mysqli_fetch_field($res))
                var_dump($tmp);
        var_dump($tmp);

        mysqli_free_result($res);

        if (NULL !== ($tmp = mysqli_fetch_field($res)))
                printf("[004] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        mysqli_close($link);
        print "done!";
?>
--EXPECTF--
object(stdClass)#%d (11) {
  ["name"]=>
  string(2) "ID"
  ["orgname"]=>
  string(2) "id"
  ["table"]=>
  string(4) "TEST"
  ["orgtable"]=>
  string(4) "test"
  ["def"]=>
  string(0) ""
  ["max_length"]=>
  int(1)
  ["length"]=>
  int(11)
  ["charsetnr"]=>
  int(63)
  ["flags"]=>
  int(49155)
  ["type"]=>
  int(3)
  ["decimals"]=>
  int(0)
}
object(stdClass)#%d (11) {
  ["name"]=>
  string(5) "label"
  ["orgname"]=>
  string(5) "label"
  ["table"]=>
  string(4) "TEST"
  ["orgtable"]=>
  string(4) "test"
  ["def"]=>
  string(0) ""
  ["max_length"]=>
  int(1)
  ["length"]=>
  int(1)
  ["charsetnr"]=>
  int(8)
  ["flags"]=>
  int(0)
  ["type"]=>
  int(254)
  ["decimals"]=>
  int(0)
}
bool(false)

Warning: mysqli_fetch_field(): Couldn't fetch mysqli_result in %s on line %d
done!
--UEXPECTF--
object(stdClass)#%d (11) {
  [u"name"]=>
  unicode(2) "ID"
  [u"orgname"]=>
  unicode(2) "id"
  [u"table"]=>
  unicode(4) "TEST"
  [u"orgtable"]=>
  unicode(4) "test"
  [u"def"]=>
  unicode(0) ""
  [u"max_length"]=>
  int(%d)
  [u"length"]=>
  int(%d)
  [u"charsetnr"]=>
  int(%d)
  [u"flags"]=>
  int(49155)
  [u"type"]=>
  int(3)
  [u"decimals"]=>
  int(0)
}
object(stdClass)#%d (11) {
  [u"name"]=>
  unicode(5) "label"
  [u"orgname"]=>
  unicode(5) "label"
  [u"table"]=>
  unicode(4) "TEST"
  [u"orgtable"]=>
  unicode(4) "test"
  [u"def"]=>
  unicode(0) ""
  [u"max_length"]=>
  int(%d)
  [u"length"]=>
  int(%d)
  [u"charsetnr"]=>
  int(%d)
  [u"flags"]=>
  int(0)
  [u"type"]=>
  int(254)
  [u"decimals"]=>
  int(0)
}
bool(false)

Warning: mysqli_fetch_field(): Couldn't fetch mysqli_result in %s on line %d
done!
http://cvs.php.net/viewvc.cgi/php-src/ext/mysqli/tests/mysqli_fetch_fields.phpt?view=markup&rev=1.1
Index: php-src/ext/mysqli/tests/mysqli_fetch_fields.phpt
+++ php-src/ext/mysqli/tests/mysqli_fetch_fields.phpt
--TEST--
mysqli_fetch_fields()
--SKIPIF--
<?php require_once('skipif.inc'); ?>
<?php require_once('skipifemb.inc'); ?>
--FILE--
<?php
        include "connect.inc";

        $tmp    = NULL;
        $link   = NULL;

        // Note: no SQL type tests, internally the same function gets used as 
for mysqli_fetch_array() which does a lot of SQL type test
        if (!is_null($tmp = @mysqli_fetch_fields()))
                printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        if (!is_null($tmp = @mysqli_fetch_fields($link)))
                printf("[002] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        require('table.inc');
        if (!$res = mysqli_query($link, "SELECT id AS ID, label FROM test AS 
TEST ORDER BY id LIMIT 1")) {
                printf("[003] [%d] %s\n", mysqli_errno($link), 
mysqli_error($link));
        }

        $fields = mysqli_fetch_fields($res);
        foreach ($fields as $k => $field)
                var_dump($field);

        mysqli_free_result($res);

        if (NULL !== ($tmp = mysqli_fetch_fields($res)))
                printf("[004] Expecting NULL, got %s/%s\n", gettype($tmp), 
$tmp);

        mysqli_close($link);
        print "done!";
?>
--EXPECTF--
object(stdClass)#%d (11) {
  ["name"]=>
  string(2) "ID"
  ["orgname"]=>
  string(2) "id"
  ["table"]=>
  string(4) "TEST"
  ["orgtable"]=>
  string(4) "test"
  ["def"]=>
  string(0) ""
  ["max_length"]=>
  int(1)
  ["length"]=>
  int(11)
  ["charsetnr"]=>
  int(63)
  ["flags"]=>
  int(49155)
  ["type"]=>
  int(3)
  ["decimals"]=>
  int(0)
}
object(stdClass)#%d (11) {
  ["name"]=>
  string(5) "label"
  ["orgname"]=>
  string(5) "label"
  ["table"]=>
  string(4) "TEST"
  ["orgtable"]=>
  string(4) "test"
  ["def"]=>
  string(0) ""
  ["max_length"]=>
  int(1)
  ["length"]=>
  int(1)
  ["charsetnr"]=>
  int(8)
  ["flags"]=>
  int(0)
  ["type"]=>
  int(254)
  ["decimals"]=>
  int(0)
}

Warning: mysqli_fetch_fields(): Couldn't fetch mysqli_result in %s on line %d
done!
--UEXPECTF--
object(stdClass)#%d (11) {
  [u"name"]=>
  unicode(2) "ID"
  [u"orgname"]=>
  unicode(2) "id"
  [u"table"]=>
  unicode(4) "TEST"
  [u"orgtable"]=>
  unicode(4) "test"
  [u"def"]=>
  unicode(0) ""
  [u"max_length"]=>
  int(%d)
  [u"length"]=>
  int(%d)
  [u"charsetnr"]=>
  int(%d)
  [u"flags"]=>
  int(%d)
  [u"type"]=>
  int(%d)
  [u"decimals"]=>
  int(0)
}
object(stdClass)#%d (11) {
  [u"name"]=>
  unicode(5) "label"
  [u"orgname"]=>
  unicode(5) "label"
  [u"table"]=>
  unicode(4) "TEST"
  [u"orgtable"]=>
  unicode(4) "test"
  [u"def"]=>
  unicode(0) ""
  [u"max_length"]=>
  int(%d)
  [u"length"]=>
  int(%d)
  [u"charsetnr"]=>
  int(%d)
  [u"flags"]=>
  int(0)
  [u"type"]=>
  int(%d)
  [u"decimals"]=>
  int(0)
}

Warning: mysqli_fetch_fields(): Couldn't fetch mysqli_result in %s on line %d
done!

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to