Browse Source

Make time tests more robust against differences in implementation

# FreeBSD mktime() returns -1 if is_dst==1 and no DST timezone is set
PEAR_1_4DEV
Ard Biesheuvel 23 years ago
parent
commit
81cfb1b312
  1. 2
      ext/standard/tests/time/003.phpt
  2. 6
      ext/standard/tests/time/bug27719.phpt
  3. 30
      ext/standard/tests/time/mktime.phpt

2
ext/standard/tests/time/003.phpt

@ -15,7 +15,7 @@ Check for mktime with out-of-range parameters
echo date("Y-m-d", mktime( 12, 0, 0, 2, 29, 2001)) ."\n";
echo date("Y-m-d", mktime( 12, 0, 0, 0, 0, 2000)) ."\n";
putenv("TZ=GST-1GDT");
putenv("TZ=Europe/London");
echo date("Y-m-d H:i:s", mktime(12,0,0,3,+90,2000,-1))."\n";
echo date("Y-m-d H:i:s", mktime(12,0,0,3,+90,2000,0))."\n";
echo date("Y-m-d H:i:s", mktime(12,0,0,3,+90,2000,1))."\n";

6
ext/standard/tests/time/bug27719.phpt

@ -1,7 +1,7 @@
--TEST--
Bug #27719: mktime returns incorrect timestamp for dst days
--FILE--
<?php
<?php /* $Id$ */
putenv("TZ=EST"); // No DST
$a = mktime(0, 0, 0, 4, 4, 2004, 0);
$b = mktime(0, 0, 0, 4, 4, 2004, 1);
@ -43,9 +43,9 @@ Bug #27719: mktime returns incorrect timestamp for dst days
echo "$c ".date("m/d/y h:i:s\n",$c);
echo "\n";
?>
--EXPECT--
1081054800 04/04/04 12:00:00
--EXPECTF--
1081054800 04/04/04 12:00:00
%s
1081054800 04/04/04 12:00:00
1075870800 02/04/04 12:00:00

30
ext/standard/tests/time/mktime.phpt

@ -1,10 +1,10 @@
--TEST--
mktime()
--FILE--
<?php
<?php /* $Id$ */
$timezones = array(
'GMT0',
'GST-1GDT'
'Europe/London'
);
foreach($timezones as $timezone)
@ -15,35 +15,35 @@ foreach($timezones as $timezone)
var_dump(mktime(0, 0, 0, 1, 1, 2002));
/* status of daylight saving time unknown */
var_dump(mktime(0, 0, 0, 1, 1, 2002, -1));
/* daylight saving time is not in affect */
/* daylight saving time is not in effect */
var_dump(mktime(0, 0, 0, 1, 1, 2002, 0));
/* daylight saving time is in affect */
/* daylight saving time is in effect */
var_dump(mktime(0, 0, 0, 1, 1, 2002, 1));
/* status of daylight saving time unknown */
var_dump(mktime(0, 0, 0, 7, 1, 2002));
/* status of daylight saving time unknown */
var_dump(mktime(0, 0, 0, 7, 1, 2002, -1));
/* daylight saving time is not in affect */
/* daylight saving time is not in effect */
var_dump(mktime(0, 0, 0, 7, 1, 2002, 0));
/* daylight saving time is in affect */
/* daylight saving time is in effect */
var_dump(mktime(0, 0, 0, 7, 1, 2002, 1));
}
?>
--EXPECT--
--EXPECTF--
int(1009843200)
int(1009843200)
int(1009843200)
int(1009843200)
int(1025481600)
int(%s)
int(1025481600)
int(1025481600)
int(1025481600)
int(%s)
int(1009843200)
int(1009843200)
int(1009843200)
int(1009839600)
int(1009839600)
int(1009839600)
int(1009836000)
int(1025474400)
int(1025474400)
int(1025478000)
int(1025474400)
int(1025478000)
int(1025481600)
int(1025478000)
Loading…
Cancel
Save