Annotation of embedaddon/php/ext/date/tests/bug51866.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Bug #51866 (Lenient parsing with parseFromFormat)
                      3: --FILE--
                      4: <?php
                      5: date_default_timezone_set('UTC');
                      6: 
                      7: $tests = array(
                      8:        array( 'Y-m-d',   '2001-11-29 13:20:01' ),
                      9:        array( 'Y-m-d+',  '2001-11-29 13:20:01' ),
                     10:        array( 'Y-m-d +', '2001-11-29 13:20:01' ),
                     11:        array( 'Y-m-d+',  '2001-11-29' ),
                     12:        array( 'Y-m-d +', '2001-11-29' ),
                     13:        array( 'Y-m-d +', '2001-11-29 ' ),
                     14: );
                     15: foreach( $tests as $test )
                     16: {
                     17:        list($format, $str) = $test;
                     18:        var_dump($format, $str);
                     19:        $d = DateTime::createFromFormat($format, $str);
                     20:        var_dump($d);
                     21:        var_dump(DateTime::getLastErrors());
                     22: 
                     23:        echo "\n\n";
                     24: }
                     25: --EXPECTF--
                     26: string(5) "Y-m-d"
                     27: string(19) "2001-11-29 13:20:01"
                     28: bool(false)
                     29: array(4) {
                     30:   ["warning_count"]=>
                     31:   int(0)
                     32:   ["warnings"]=>
                     33:   array(0) {
                     34:   }
                     35:   ["error_count"]=>
                     36:   int(1)
                     37:   ["errors"]=>
                     38:   array(1) {
                     39:     [10]=>
                     40:     string(13) "Trailing data"
                     41:   }
                     42: }
                     43: 
                     44: 
                     45: string(6) "Y-m-d+"
                     46: string(19) "2001-11-29 13:20:01"
                     47: object(DateTime)#2 (3) {
                     48:   ["date"]=>
                     49:   string(19) "2001-11-29 %d:%d:%d"
                     50:   ["timezone_type"]=>
                     51:   int(3)
                     52:   ["timezone"]=>
                     53:   string(%d) "%s"
                     54: }
                     55: array(4) {
                     56:   ["warning_count"]=>
                     57:   int(1)
                     58:   ["warnings"]=>
                     59:   array(1) {
                     60:     [10]=>
                     61:     string(13) "Trailing data"
                     62:   }
                     63:   ["error_count"]=>
                     64:   int(0)
                     65:   ["errors"]=>
                     66:   array(0) {
                     67:   }
                     68: }
                     69: 
                     70: 
                     71: string(7) "Y-m-d +"
                     72: string(19) "2001-11-29 13:20:01"
                     73: object(DateTime)#3 (3) {
                     74:   ["date"]=>
                     75:   string(19) "2001-11-29 %d:%d:%d"
                     76:   ["timezone_type"]=>
                     77:   int(3)
                     78:   ["timezone"]=>
                     79:   string(%d) "%s"
                     80: }
                     81: array(4) {
                     82:   ["warning_count"]=>
                     83:   int(1)
                     84:   ["warnings"]=>
                     85:   array(1) {
                     86:     [11]=>
                     87:     string(13) "Trailing data"
                     88:   }
                     89:   ["error_count"]=>
                     90:   int(0)
                     91:   ["errors"]=>
                     92:   array(0) {
                     93:   }
                     94: }
                     95: 
                     96: 
                     97: string(6) "Y-m-d+"
                     98: string(10) "2001-11-29"
                     99: object(DateTime)#2 (3) {
                    100:   ["date"]=>
                    101:   string(19) "2001-11-29 %d:%d:%d"
                    102:   ["timezone_type"]=>
                    103:   int(3)
                    104:   ["timezone"]=>
                    105:   string(%d) "%s"
                    106: }
                    107: array(4) {
                    108:   ["warning_count"]=>
                    109:   int(0)
                    110:   ["warnings"]=>
                    111:   array(0) {
                    112:   }
                    113:   ["error_count"]=>
                    114:   int(0)
                    115:   ["errors"]=>
                    116:   array(0) {
                    117:   }
                    118: }
                    119: 
                    120: 
                    121: string(7) "Y-m-d +"
                    122: string(10) "2001-11-29"
                    123: bool(false)
                    124: array(4) {
                    125:   ["warning_count"]=>
                    126:   int(0)
                    127:   ["warnings"]=>
                    128:   array(0) {
                    129:   }
                    130:   ["error_count"]=>
                    131:   int(1)
                    132:   ["errors"]=>
                    133:   array(1) {
                    134:     [10]=>
                    135:     string(12) "Data missing"
                    136:   }
                    137: }
                    138: 
                    139: 
                    140: string(7) "Y-m-d +"
                    141: string(11) "2001-11-29 "
                    142: object(DateTime)#2 (3) {
                    143:   ["date"]=>
                    144:   string(19) "2001-11-29 %d:%d:%d"
                    145:   ["timezone_type"]=>
                    146:   int(3)
                    147:   ["timezone"]=>
                    148:   string(%d) "%s"
                    149: }
                    150: array(4) {
                    151:   ["warning_count"]=>
                    152:   int(0)
                    153:   ["warnings"]=>
                    154:   array(0) {
                    155:   }
                    156:   ["error_count"]=>
                    157:   int(0)
                    158:   ["errors"]=>
                    159:   array(0) {
                    160:   }
                    161: }

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