mirror of
https://github.com/php/php-src.git
synced 2024-12-04 15:23:44 +08:00
fix segfault in jfmonthname(), add test
fix tests (I don't have /home/hartmut here =))
This commit is contained in:
parent
af234920c6
commit
c68b28f250
@ -154,6 +154,13 @@ void SdnToGregorian(
|
|||||||
}
|
}
|
||||||
temp = (sdn + GREGOR_SDN_OFFSET) * 4 - 1;
|
temp = (sdn + GREGOR_SDN_OFFSET) * 4 - 1;
|
||||||
|
|
||||||
|
if (temp < 0) {
|
||||||
|
*pYear = 0;
|
||||||
|
*pMonth = 0;
|
||||||
|
*pDay = 0;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/* Calculate the century (year/100). */
|
/* Calculate the century (year/100). */
|
||||||
century = temp / DAYS_PER_400_YEARS;
|
century = temp / DAYS_PER_400_YEARS;
|
||||||
|
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
--TEST--
|
--TEST--
|
||||||
cal_info()
|
cal_info()
|
||||||
|
--INI--
|
||||||
|
date.timezone=UTC
|
||||||
--SKIPIF--
|
--SKIPIF--
|
||||||
<?php include 'skipif.inc'; ?>
|
<?php include 'skipif.inc'; ?>
|
||||||
--FILE--
|
--FILE--
|
||||||
@ -8,7 +10,7 @@ cal_info()
|
|||||||
print_r(cal_info(1));
|
print_r(cal_info(1));
|
||||||
print_r(cal_info(99999));
|
print_r(cal_info(99999));
|
||||||
?>
|
?>
|
||||||
--EXPECT--
|
--EXPECTF--
|
||||||
Array
|
Array
|
||||||
(
|
(
|
||||||
[0] => Array
|
[0] => Array
|
||||||
@ -211,4 +213,4 @@ Array
|
|||||||
[calsymbol] => CAL_JULIAN
|
[calsymbol] => CAL_JULIAN
|
||||||
)
|
)
|
||||||
|
|
||||||
Warning: cal_info(): invalid calendar ID 99999. in /home/hartmut/projects/php/dev/head/ext/calendar/tests/cal_info.php on line 4
|
Warning: cal_info(): invalid calendar ID 99999. in %s on line %d
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
--TEST--
|
--TEST--
|
||||||
easter_date()
|
easter_date()
|
||||||
|
--INI--
|
||||||
|
date.timezone=UTC
|
||||||
--SKIPIF--
|
--SKIPIF--
|
||||||
<?php include 'skipif.inc'; ?>
|
<?php include 'skipif.inc'; ?>
|
||||||
--FILE--
|
--FILE--
|
||||||
@ -10,9 +12,9 @@ echo date("Y-m-d", easter_date(2002))."\n";
|
|||||||
echo date("Y-m-d", easter_date(1492))."\n";
|
echo date("Y-m-d", easter_date(1492))."\n";
|
||||||
?>
|
?>
|
||||||
--EXPECTF--
|
--EXPECTF--
|
||||||
2000-04-23
|
2000-04-22
|
||||||
2001-04-15
|
2001-04-14
|
||||||
2002-03-31
|
2002-03-30
|
||||||
|
|
||||||
Warning: easter_date(): This function is only valid for years between 1970 and 2037 inclusive in %seaster_date.php on line 5
|
Warning: easter_date(): This function is only valid for years between 1970 and 2037 inclusive in %s on line %d
|
||||||
1970-01-01
|
1970-01-01
|
||||||
|
71
ext/calendar/tests/jdtomonthname.phpt
Normal file
71
ext/calendar/tests/jdtomonthname.phpt
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
--TEST--
|
||||||
|
jdtomonthname() test
|
||||||
|
--SKIPIF--
|
||||||
|
<?php if (!extension_loaded("calendar")) print "skip"; ?>
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$jd_days = Array(
|
||||||
|
2453396,
|
||||||
|
2440588,
|
||||||
|
-1,
|
||||||
|
array(),
|
||||||
|
1000000000
|
||||||
|
);
|
||||||
|
|
||||||
|
foreach ($jd_days as $jd_day) {
|
||||||
|
var_dump(jdmonthname($jd_day,0));
|
||||||
|
var_dump(jdmonthname($jd_day,1));
|
||||||
|
var_dump(jdmonthname($jd_day,2));
|
||||||
|
var_dump(jdmonthname($jd_day,3));
|
||||||
|
var_dump(jdmonthname($jd_day,4));
|
||||||
|
var_dump(jdmonthname($jd_day,5));
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "Done\n";
|
||||||
|
|
||||||
|
?>
|
||||||
|
--EXPECTF--
|
||||||
|
string(3) "Jan"
|
||||||
|
string(7) "January"
|
||||||
|
string(3) "Jan"
|
||||||
|
string(7) "January"
|
||||||
|
string(6) "Shevat"
|
||||||
|
string(0) ""
|
||||||
|
string(3) "Jan"
|
||||||
|
string(7) "January"
|
||||||
|
string(3) "Dec"
|
||||||
|
string(8) "December"
|
||||||
|
string(5) "Tevet"
|
||||||
|
string(0) ""
|
||||||
|
string(0) ""
|
||||||
|
string(0) ""
|
||||||
|
string(0) ""
|
||||||
|
string(0) ""
|
||||||
|
string(0) ""
|
||||||
|
string(0) ""
|
||||||
|
|
||||||
|
Warning: jdmonthname() expects parameter 1 to be long, array given in %s on line %d
|
||||||
|
bool(false)
|
||||||
|
|
||||||
|
Warning: jdmonthname() expects parameter 1 to be long, array given in %s on line %d
|
||||||
|
bool(false)
|
||||||
|
|
||||||
|
Warning: jdmonthname() expects parameter 1 to be long, array given in %s on line %d
|
||||||
|
bool(false)
|
||||||
|
|
||||||
|
Warning: jdmonthname() expects parameter 1 to be long, array given in %s on line %d
|
||||||
|
bool(false)
|
||||||
|
|
||||||
|
Warning: jdmonthname() expects parameter 1 to be long, array given in %s on line %d
|
||||||
|
bool(false)
|
||||||
|
|
||||||
|
Warning: jdmonthname() expects parameter 1 to be long, array given in %s on line %d
|
||||||
|
bool(false)
|
||||||
|
string(0) ""
|
||||||
|
string(0) ""
|
||||||
|
string(0) ""
|
||||||
|
string(0) ""
|
||||||
|
string(6) "AdarII"
|
||||||
|
string(0) ""
|
||||||
|
Done
|
@ -1,5 +1,7 @@
|
|||||||
--TEST--
|
--TEST--
|
||||||
jdtounix()
|
jdtounix()
|
||||||
|
--INI--
|
||||||
|
date.timezone=UTC
|
||||||
--SKIPIF--
|
--SKIPIF--
|
||||||
<?php include 'skipif.inc'; ?>
|
<?php include 'skipif.inc'; ?>
|
||||||
--FILE--
|
--FILE--
|
||||||
|
Loading…
Reference in New Issue
Block a user