Annotation of embedaddon/php/ext/mysqli/tests/mysqli_stmt_param_count.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: mysqli_stmt_param_count()
                      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:        $tmp    = NULL;
                     14:        $link   = NULL;
                     15: 
                     16:        if (!is_null($tmp = @mysqli_stmt_param_count()))
                     17:                printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
                     18: 
                     19:        if (!is_null($tmp = @mysqli_stmt_param_count($link)))
                     20:                printf("[002] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
                     21: 
                     22:        require('table.inc');
                     23: 
                     24:        if (!$stmt = mysqli_stmt_init($link))
                     25:                printf("[003] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
                     26: 
                     27:        if (NULL !== ($tmp = mysqli_stmt_param_count($stmt)))
                     28:                printf("[004] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
                     29: 
                     30:        function func_test_mysqli_stmt_param_count($stmt, $query, $expected, $offset) {
                     31: 
                     32:                if (!mysqli_stmt_prepare($stmt, $query)) {
                     33:                        printf("[%03d] [%d] %s\n", $offset, mysqli_stmt_errno($stmt), mysqli_error($stmt));
                     34:                        return false;
                     35:                }
                     36: 
                     37:                if ($expected !== ($tmp = mysqli_stmt_param_count($stmt)))
                     38:                        printf("[%03d] Expecting %s/%d, got %s/%d\n", $offset + 3,
                     39:                                gettype($expected), $expected,
                     40:                                gettype($tmp), $tmp);
                     41:                return true;
                     42:        }
                     43: 
                     44:        func_test_mysqli_stmt_param_count($stmt, "SELECT 1 AS a", 0, 10);
                     45:        func_test_mysqli_stmt_param_count($stmt, "INSERT INTO test(id) VALUES (?)", 1, 20);
                     46:        func_test_mysqli_stmt_param_count($stmt, "INSERT INTO test(id, label) VALUES (?, ?)", 2, 30);
                     47:        func_test_mysqli_stmt_param_count($stmt, "INSERT INTO test(id, label) VALUES (?, '?')", 1, 40);
                     48: 
                     49:        mysqli_stmt_close($stmt);
                     50: 
                     51:        if (NULL !== ($tmp = mysqli_stmt_param_count($stmt)))
                     52:                printf("[40] Expecting NULL, got %s/%s\n");
                     53: 
                     54:        mysqli_close($link);
                     55: 
                     56:        /* Check that the function alias exists. It's a deprecated function,
                     57:        but we have not announce the removal so far, therefore we need to check for it */
                     58:        if (!is_null($tmp = @mysqli_stmt_param_count()))
                     59:                printf("[041] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
                     60: 
                     61:        print "done!";
                     62: ?>
                     63: --CLEAN--
                     64: <?php
                     65:        require_once("clean_table.inc");
                     66: ?>
                     67: --EXPECTF--
                     68: Warning: mysqli_stmt_param_count(): invalid object or resource mysqli_stmt
                     69:  in %s on line %d
                     70: 
                     71: Warning: mysqli_stmt_param_count(): Couldn't fetch mysqli_stmt in %s on line %d
                     72: done!

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>