Annotation of embedaddon/php/ext/date/tests/bug20382-2.phpt, revision 1.1.1.2

1.1       misho       1: --TEST--
                      2: Bug #20382 [2] (strtotime ("Monday", $date) produces wrong result on DST changeover)
                      3: --FILE--
                      4: <?php
                      5: 
                      6: $tests = array(
                      7:        array("Europe/Andorra",     17, 17, 17, 1, 24764, 1970),
                      8:        array("Asia/Dubai",         17, 17, 17, 1, 1, 1970),
                      9:        array("Asia/Kabul",         17, 17, 17, 1, 1, 1970),
                     10:        array("America/Antigua",    17, 17, 17, 1, 1, 1970),
                     11:        array("America/Anguilla",   17, 17, 17, 1, 1, 1970),
                     12:        array("Europe/Tirane",      17, 17, 17, 1, 4849, 1970),
                     13:        array("Asia/Yerevan",       17, 17, 17, 1, 24764, 1970),
                     14:        array("America/Curacao",    17, 17, 17, 1, 1, 1970),
                     15:        array("Africa/Luanda",      17, 17, 17, 1, 1, 1970),
                     16:        array("Antarctica/McMurdo", 17, 17, 17, 1, 24743, 1970),
                     17:        array("Australia/Adelaide", 17, 17, 17, 1, 1, 1971),
                     18:        array("Australia/Darwin",   17, 17, 17, 1, 88, 1971),
                     19:        array("Australia/Perth",    17, 17, 17, 1, 1, 1971),
                     20:        array("America/Aruba",      17, 17, 17, 1, 88, 1971),
                     21:        array("Asia/Baku",          17, 17, 17, 1, 1, 1971),
                     22:        array("Europe/Sarajevo",    17, 17, 17, 1, 1, 1971),
                     23:        array("America/Barbados",   17, 17, 17, 1, 1, 1971),
                     24:        array("Asia/Dacca",         17, 17, 17, 1, 1, 1971),
                     25:        array("Europe/Brussels",    17, 17, 17, 1, 1, 1971),
                     26:        array("Africa/Ouagadougou", 17, 17, 17, 1, 88, 1971),
                     27:        array("Europe/Tirane",      17, 17, 17, 1, 4849, 1970),
                     28:        array("America/Buenos_Aires", 17, 17, 17, 1, 1734, 1970),
                     29:        array("America/Rosario",    17, 17, 17, 1, 1734, 1970),
                     30:        array("Europe/Vienna",      17, 17, 17, 1, 3743, 1970),
                     31:        array("Asia/Baku",          17, 17, 17, 1, 9490, 1970),
                     32: );
                     33: 
                     34: foreach ($tests as $test) {
                     35:        date_default_timezone_set($test[0]);
                     36:        print "{$test[0]}\n";
                     37:        array_shift($test);
                     38:        $timestamp = call_user_func_array('mktime', $test);
                     39: 
                     40:        print "ts     = ". date("l Y-m-d H:i:s T", $timestamp). "\n";
                     41:        $strtotime_tstamp = strtotime("first monday", $timestamp);
                     42:        print "result = ".date("l Y-m-d H:i:s T", $strtotime_tstamp)."\n";
                     43:        print "wanted = Monday            00:00:00\n\n";
                     44: }
                     45: ?>
                     46: --EXPECT--
                     47: Europe/Andorra
                     48: ts     = Monday 2037-10-19 17:17:17 CEST
                     49: result = Monday 2037-10-26 00:00:00 CET
                     50: wanted = Monday            00:00:00
                     51: 
                     52: Asia/Dubai
                     53: ts     = Thursday 1970-01-01 17:17:17 GST
                     54: result = Monday 1970-01-05 00:00:00 GST
                     55: wanted = Monday            00:00:00
                     56: 
                     57: Asia/Kabul
                     58: ts     = Thursday 1970-01-01 17:17:17 AFT
                     59: result = Monday 1970-01-05 00:00:00 AFT
                     60: wanted = Monday            00:00:00
                     61: 
                     62: America/Antigua
                     63: ts     = Thursday 1970-01-01 17:17:17 AST
                     64: result = Monday 1970-01-05 00:00:00 AST
                     65: wanted = Monday            00:00:00
                     66: 
                     67: America/Anguilla
                     68: ts     = Thursday 1970-01-01 17:17:17 AST
                     69: result = Monday 1970-01-05 00:00:00 AST
                     70: wanted = Monday            00:00:00
                     71: 
                     72: Europe/Tirane
                     73: ts     = Monday 1983-04-11 17:17:17 CET
                     74: result = Monday 1983-04-18 01:00:00 CEST
                     75: wanted = Monday            00:00:00
                     76: 
                     77: Asia/Yerevan
1.1.1.2 ! misho      78: ts     = Monday 2037-10-19 17:17:17 AMT
1.1       misho      79: result = Monday 2037-10-26 00:00:00 AMT
                     80: wanted = Monday            00:00:00
                     81: 
                     82: America/Curacao
                     83: ts     = Thursday 1970-01-01 17:17:17 AST
                     84: result = Monday 1970-01-05 00:00:00 AST
                     85: wanted = Monday            00:00:00
                     86: 
                     87: Africa/Luanda
                     88: ts     = Thursday 1970-01-01 17:17:17 WAT
                     89: result = Monday 1970-01-05 00:00:00 WAT
                     90: wanted = Monday            00:00:00
                     91: 
                     92: Antarctica/McMurdo
                     93: ts     = Monday 2037-09-28 17:17:17 NZDT
                     94: result = Monday 2037-10-05 00:00:00 NZDT
                     95: wanted = Monday            00:00:00
                     96: 
                     97: Australia/Adelaide
                     98: ts     = Friday 1971-01-01 17:17:17 CST
                     99: result = Monday 1971-01-04 00:00:00 CST
                    100: wanted = Monday            00:00:00
                    101: 
                    102: Australia/Darwin
                    103: ts     = Monday 1971-03-29 17:17:17 CST
                    104: result = Monday 1971-04-05 00:00:00 CST
                    105: wanted = Monday            00:00:00
                    106: 
                    107: Australia/Perth
                    108: ts     = Friday 1971-01-01 17:17:17 WST
                    109: result = Monday 1971-01-04 00:00:00 WST
                    110: wanted = Monday            00:00:00
                    111: 
                    112: America/Aruba
                    113: ts     = Monday 1971-03-29 17:17:17 AST
                    114: result = Monday 1971-04-05 00:00:00 AST
                    115: wanted = Monday            00:00:00
                    116: 
                    117: Asia/Baku
                    118: ts     = Friday 1971-01-01 17:17:17 BAKT
                    119: result = Monday 1971-01-04 00:00:00 BAKT
                    120: wanted = Monday            00:00:00
                    121: 
                    122: Europe/Sarajevo
                    123: ts     = Friday 1971-01-01 17:17:17 CET
                    124: result = Monday 1971-01-04 00:00:00 CET
                    125: wanted = Monday            00:00:00
                    126: 
                    127: America/Barbados
                    128: ts     = Friday 1971-01-01 17:17:17 AST
                    129: result = Monday 1971-01-04 00:00:00 AST
                    130: wanted = Monday            00:00:00
                    131: 
                    132: Asia/Dacca
                    133: ts     = Friday 1971-01-01 17:17:17 DACT
                    134: result = Monday 1971-01-04 00:00:00 DACT
                    135: wanted = Monday            00:00:00
                    136: 
                    137: Europe/Brussels
                    138: ts     = Friday 1971-01-01 17:17:17 CET
                    139: result = Monday 1971-01-04 00:00:00 CET
                    140: wanted = Monday            00:00:00
                    141: 
                    142: Africa/Ouagadougou
                    143: ts     = Monday 1971-03-29 17:17:17 GMT
                    144: result = Monday 1971-04-05 00:00:00 GMT
                    145: wanted = Monday            00:00:00
                    146: 
                    147: Europe/Tirane
                    148: ts     = Monday 1983-04-11 17:17:17 CET
                    149: result = Monday 1983-04-18 01:00:00 CEST
                    150: wanted = Monday            00:00:00
                    151: 
                    152: America/Buenos_Aires
                    153: ts     = Monday 1974-09-30 17:17:17 ART
                    154: result = Monday 1974-10-07 00:00:00 ART
                    155: wanted = Monday            00:00:00
                    156: 
                    157: America/Rosario
                    158: ts     = Monday 1974-09-30 17:17:17 ART
                    159: result = Monday 1974-10-07 00:00:00 ART
                    160: wanted = Monday            00:00:00
                    161: 
                    162: Europe/Vienna
                    163: ts     = Monday 1980-03-31 17:17:17 CET
                    164: result = Monday 1980-04-07 00:00:00 CEST
                    165: wanted = Monday            00:00:00
                    166: 
                    167: Asia/Baku
                    168: ts     = Monday 1995-12-25 17:17:17 AZT
                    169: result = Monday 1996-01-01 00:00:00 AZT
                    170: wanted = Monday            00:00:00

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