Annotation of embedaddon/php/ext/mysql/tests/mysql_constants.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Constants exported by ext/mysql
                      3: --SKIPIF--
                      4: <?php
                      5: require_once('skipif.inc');
                      6: require_once('skipifconnectfailure.inc');
                      7: ?>
                      8: --FILE--
                      9: <?php
                     10: require("connect.inc");
                     11: require("table.inc");
                     12: 
                     13: $constants = get_defined_constants(true);
                     14: sort($constants);
                     15: 
                     16: $expected_constants = array(
                     17:        'MYSQL_ASSOC'                   => true,
                     18:        'MYSQL_NUM'                     => true,
                     19:        'MYSQL_BOTH'                    => true,
                     20:        'MYSQL_CLIENT_COMPRESS'         => true,
                     21:        'MYSQL_CLIENT_INTERACTIVE'      => true,
                     22:        'MYSQL_CLIENT_IGNORE_SPACE'     => true,
                     23: );
                     24: 
                     25: $version = mysql_get_server_info($link);
                     26: if (!preg_match('@(\d+)\.(\d+)\.(\d+)@ism', $version, $matches))
                     27:        printf("[001] Cannot get server version\n");
                     28: $version = ($matches[1] * 100) + ($matches[2] * 10) + $matches[3];
                     29: 
                     30: if ($version > 400) {
                     31:        $expected_constants = array_merge($expected_constants, array(
                     32:                                        "MYSQL_CLIENT_SSL"                => true,
                     33:                                        ));
                     34: }
                     35: 
                     36: 
                     37: $unexpected_constants = array();
                     38: 
                     39: foreach ($constants as $group => $consts) {
                     40:        foreach ($consts as $name => $value) {
                     41:                if (stristr($name, 'mysql') && !preg_match("/^mysql([^_]+)_/iu", $name)) {
                     42:                        $name = strtoupper($name);
                     43:                        if (isset($expected_constants[$name])) {
                     44:                                unset($expected_constants[$name]);
                     45:                        } else {
                     46:                                $unexpected_constants[$name] = $name;
                     47:                        }
                     48:                }
                     49:        }
                     50: }
                     51: 
                     52: if (!empty($unexpected_constants)) {
                     53:        printf("Dumping list of unexpected constants\n");
                     54:        var_dump($unexpected_constants);
                     55: }
                     56: 
                     57: if (!empty($expected_constants)) {
                     58:        printf("Dumping list of missing constants\n");
                     59:        var_dump($expected_constants);
                     60: }
                     61: 
                     62: print "done!";
                     63: ?>
                     64: --EXPECTF--
                     65: done!

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