Annotation of embedaddon/php/ext/pcre/tests/preg_match_all_error1.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Test preg_match_all() function : error conditions - bad regular expressions
        !             3: --FILE--
        !             4: <?php
        !             5: /*
        !             6: * proto int preg_match_all(string pattern, string subject, array subpatterns [, int flags [, int offset]])
        !             7: * Function is implemented in ext/pcre/php_pcre.c
        !             8: */
        !             9: error_reporting(E_ALL&~E_NOTICE);
        !            10: /*
        !            11: * Testing how preg_match_all reacts to being passed the wrong type of regex argument
        !            12: */
        !            13: echo "*** Testing preg_match_all() : error conditions ***\n";
        !            14: $regex_array = array('abcdef', //Regex without delimeter
        !            15: '/[a-zA-Z]', //Regex without closing delimeter
        !            16: '[a-zA-Z]/', //Regex without opening delimeter
        !            17: '/[a-zA-Z]/F', array('[a-z]', //Array of Regexes
        !            18: '[A-Z]', '[0-9]'), '/[a-zA-Z]/', //Regex string
        !            19: );
        !            20: $subject = 'test';
        !            21: foreach($regex_array as $regex_value) {
        !            22:     print "\nArg value is $regex_value\n";
        !            23:     var_dump(preg_match_all($regex_value, $subject, $matches1));
        !            24:     var_dump($matches1);
        !            25: }
        !            26: $regex_value = new stdclass(); //Object
        !            27: var_dump(preg_match_all($regex_value, $subject, $matches));
        !            28: var_dump($matches);
        !            29: ?>
        !            30: --EXPECTF--
        !            31: *** Testing preg_match_all() : error conditions ***
        !            32: 
        !            33: Arg value is abcdef
        !            34: 
        !            35: Warning: preg_match_all(): Delimiter must not be alphanumeric or backslash in %spreg_match_all_error1.php on line %d
        !            36: bool(false)
        !            37: NULL
        !            38: 
        !            39: Arg value is /[a-zA-Z]
        !            40: 
        !            41: Warning: preg_match_all(): No ending delimiter '/' found in %spreg_match_all_error1.php on line %d
        !            42: bool(false)
        !            43: NULL
        !            44: 
        !            45: Arg value is [a-zA-Z]/
        !            46: 
        !            47: Warning: preg_match_all(): Unknown modifier '/' in %spreg_match_all_error1.php on line %d
        !            48: bool(false)
        !            49: NULL
        !            50: 
        !            51: Arg value is /[a-zA-Z]/F
        !            52: 
        !            53: Warning: preg_match_all(): Unknown modifier 'F' in %spreg_match_all_error1.php on line %d
        !            54: bool(false)
        !            55: NULL
        !            56: 
        !            57: Arg value is Array
        !            58: 
        !            59: Warning: preg_match_all() expects parameter 1 to be string, array given in %spreg_match_all_error1.php on line %d
        !            60: bool(false)
        !            61: NULL
        !            62: 
        !            63: Arg value is /[a-zA-Z]/
        !            64: int(4)
        !            65: array(1) {
        !            66:   [0]=>
        !            67:   array(4) {
        !            68:     [0]=>
        !            69:     string(1) "t"
        !            70:     [1]=>
        !            71:     string(1) "e"
        !            72:     [2]=>
        !            73:     string(1) "s"
        !            74:     [3]=>
        !            75:     string(1) "t"
        !            76:   }
        !            77: }
        !            78: 
        !            79: Warning: preg_match_all() expects parameter 1 to be string, object given in %spreg_match_all_error1.php on line %d
        !            80: bool(false)
        !            81: NULL

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