mirror of
https://github.com/php/php-src.git
synced 2025-08-18 06:58:55 +02:00
added some tests to datetime and dateinterval functions
This commit is contained in:
parent
813830e763
commit
d89b1dad8a
12 changed files with 237 additions and 0 deletions
34
ext/date/tests/date_interval_create_from_date_string.phpt
Normal file
34
ext/date/tests/date_interval_create_from_date_string.phpt
Normal file
|
@ -0,0 +1,34 @@
|
|||
--TEST--
|
||||
Test date_interval_create_from_date_string() function : basic functionality
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--FILE--
|
||||
<?php
|
||||
$string = '1 day'; //P1D
|
||||
$i = date_interval_create_from_date_string($string);
|
||||
var_dump($i->d);
|
||||
|
||||
$string = '2 weeks'; //14 days
|
||||
$i = date_interval_create_from_date_string($string);
|
||||
var_dump($i->d);
|
||||
|
||||
$string = '3 months';
|
||||
$i = date_interval_create_from_date_string($string);
|
||||
var_dump($i->m);
|
||||
|
||||
$string = '4 years';
|
||||
$i = date_interval_create_from_date_string($string);
|
||||
var_dump($i->y);
|
||||
|
||||
$string = '1 year + 1 day';
|
||||
$i = date_interval_create_from_date_string($string);
|
||||
var_dump($i->y);
|
||||
var_dump($i->d);
|
||||
?>
|
||||
--EXPECTF--
|
||||
int(1)
|
||||
int(14)
|
||||
int(3)
|
||||
int(4)
|
||||
int(1)
|
||||
int(1)
|
|
@ -0,0 +1,42 @@
|
|||
--TEST--
|
||||
Test date_interval_create_from_date_string() function : null parameter
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--FILE--
|
||||
<?php
|
||||
$i = date_interval_create_from_date_string(null); //returns a empty object
|
||||
var_dump($i);
|
||||
?>
|
||||
--EXPECTF--
|
||||
object(DateInterval)#1 (15) {
|
||||
["y"]=>
|
||||
int(0)
|
||||
["m"]=>
|
||||
int(0)
|
||||
["d"]=>
|
||||
int(0)
|
||||
["h"]=>
|
||||
int(0)
|
||||
["i"]=>
|
||||
int(0)
|
||||
["s"]=>
|
||||
int(0)
|
||||
["weekday"]=>
|
||||
int(0)
|
||||
["weekday_behavior"]=>
|
||||
int(0)
|
||||
["first_last_day_of"]=>
|
||||
int(0)
|
||||
["invert"]=>
|
||||
int(0)
|
||||
["days"]=>
|
||||
int(0)
|
||||
["special_type"]=>
|
||||
int(0)
|
||||
["special_amount"]=>
|
||||
int(0)
|
||||
["have_weekday_relative"]=>
|
||||
int(0)
|
||||
["have_special_relative"]=>
|
||||
int(0)
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
--TEST--
|
||||
Test date_interval_create_from_date_string() function : wrong parameter (array)
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--FILE--
|
||||
<?php
|
||||
$wrong_parameter = array();
|
||||
$i = date_interval_create_from_date_string($wrong_parameter);
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: date_interval_create_from_date_string() expects parameter 1 to be string, array given in %s on line %d
|
|
@ -0,0 +1,9 @@
|
|||
--TEST--
|
||||
Test date_interval_create_from_date_string() function : with 2 parameters (wrong).
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--FILE--
|
||||
<?php
|
||||
$i = date_interval_create_from_date_string('1 year', 'wrong');
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: date_interval_create_from_date_string() expects exactly 1 parameter, 2 given in %s on line %d
|
19
ext/date/tests/date_timestamp_set.phpt
Normal file
19
ext/date/tests/date_timestamp_set.phpt
Normal file
|
@ -0,0 +1,19 @@
|
|||
--TEST--
|
||||
Test the basics to function date_timestamp_set().
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--INI--
|
||||
date.timezone = UTC;
|
||||
date_default_timezone_set("America/Sao_Paulo");
|
||||
--FILE--
|
||||
<?php
|
||||
$dftz021 = date_default_timezone_get(); //UTC
|
||||
|
||||
$dtms021 = date_create();
|
||||
|
||||
date_timestamp_set($dtms021, 1234567890);
|
||||
|
||||
var_dump(date_format($dtms021, 'B => (U) => T Y-M-d H:i:s'));
|
||||
?>
|
||||
--EXPECTF--
|
||||
string(47) "021 => (1234567890) => UTC 2009-Feb-13 23:31:30"
|
17
ext/date/tests/date_timestamp_set_nullparam.phpt
Normal file
17
ext/date/tests/date_timestamp_set_nullparam.phpt
Normal file
|
@ -0,0 +1,17 @@
|
|||
--TEST--
|
||||
Test the function date_timestamp_set() with first null parameter.
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--INI--
|
||||
date.timezone = UTC;
|
||||
date_default_timezone_set("America/Sao_Paulo");
|
||||
--FILE--
|
||||
<?php
|
||||
$dftz021 = date_default_timezone_get(); //UTC
|
||||
|
||||
$dtms021 = date_create();
|
||||
|
||||
date_timestamp_set(null, 1234567890);
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: date_timestamp_set() expects parameter 1 to be DateTime, null given in %s on line %d
|
24
ext/date/tests/date_timestamp_set_nullparam2.phpt
Normal file
24
ext/date/tests/date_timestamp_set_nullparam2.phpt
Normal file
|
@ -0,0 +1,24 @@
|
|||
--TEST--
|
||||
Test the function date_timestamp_set() with second null parameter.
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--INI--
|
||||
date.timezone = UTC;
|
||||
date_default_timezone_set("America/Sao_Paulo");
|
||||
--FILE--
|
||||
<?php
|
||||
$dftz021 = date_default_timezone_get(); //UTC
|
||||
|
||||
$dtms021 = date_create();
|
||||
|
||||
var_dump(date_timestamp_set($dtms021, null));
|
||||
?>
|
||||
--EXPECTF--
|
||||
object(DateTime)#1 (3) {
|
||||
["date"]=>
|
||||
string(26) "1970-01-01 00:00:00.000000"
|
||||
["timezone_type"]=>
|
||||
int(3)
|
||||
["timezone"]=>
|
||||
string(3) "UTC"
|
||||
}
|
17
ext/date/tests/date_timestamp_set_wrongparam_001.phpt
Normal file
17
ext/date/tests/date_timestamp_set_wrongparam_001.phpt
Normal file
|
@ -0,0 +1,17 @@
|
|||
--TEST--
|
||||
Check the function date_timestamp_set() with first parameter wrong (array).
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--INI--
|
||||
date.timezone = UTC;
|
||||
date_default_timezone_set("America/Sao_Paulo");
|
||||
--FILE--
|
||||
<?php
|
||||
$dftz021 = date_default_timezone_get(); //UTC
|
||||
|
||||
$dtms021 = array();
|
||||
|
||||
date_timestamp_set($dtms021, 123456789);
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: date_timestamp_set() expects parameter 1 to be DateTime, array given in %s on line %d
|
15
ext/date/tests/date_timestamp_set_wrongparam_002.phpt
Normal file
15
ext/date/tests/date_timestamp_set_wrongparam_002.phpt
Normal file
|
@ -0,0 +1,15 @@
|
|||
--TEST--
|
||||
Check the function date_timestamp_set() with first parameter wrong (integer).
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--INI--
|
||||
date.timezone = UTC;
|
||||
date_default_timezone_set("America/Sao_Paulo");
|
||||
--FILE--
|
||||
<?php
|
||||
$dftz021 = date_default_timezone_get(); //UTC
|
||||
|
||||
date_timestamp_set(987654321, 123456789);
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: date_timestamp_set() expects parameter 1 to be DateTime, integer given in %s on line %d
|
19
ext/date/tests/date_timestamp_set_wrongparam_003.phpt
Normal file
19
ext/date/tests/date_timestamp_set_wrongparam_003.phpt
Normal file
|
@ -0,0 +1,19 @@
|
|||
--TEST--
|
||||
Check the function date_timestamp_set() with second parameter wrong (array).
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--INI--
|
||||
date.timezone = UTC;
|
||||
date_default_timezone_set("America/Sao_Paulo");
|
||||
--FILE--
|
||||
<?php
|
||||
$dftz021 = date_default_timezone_get(); //UTC
|
||||
|
||||
$dtms021 = new DateTime();
|
||||
|
||||
$wrong_parameter = array();
|
||||
|
||||
date_timestamp_set($dtms021, $wrong_parameter);
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: date_timestamp_set() expects parameter 2 to be long, array given in %s on line %d
|
17
ext/date/tests/date_timestamp_set_wrongparam_004.phpt
Normal file
17
ext/date/tests/date_timestamp_set_wrongparam_004.phpt
Normal file
|
@ -0,0 +1,17 @@
|
|||
--TEST--
|
||||
Check the function date_timestamp_set() with 3 parameters.
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--INI--
|
||||
date.timezone = UTC;
|
||||
date_default_timezone_set("America/Sao_Paulo");
|
||||
--FILE--
|
||||
<?php
|
||||
$dftz021 = date_default_timezone_get(); //UTC
|
||||
|
||||
$dtms021 = new DateTime();
|
||||
|
||||
date_timestamp_set($dtms021, 123456789, 'error');
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: date_timestamp_set() expects exactly 2 parameters, 3 given in %s on line %d
|
13
ext/date/tests/timezone_version_get.phpt
Normal file
13
ext/date/tests/timezone_version_get.phpt
Normal file
|
@ -0,0 +1,13 @@
|
|||
--TEST--
|
||||
Test the basics to function timezone_version_get().
|
||||
--CREDITS--
|
||||
Rodrigo Prado de Jesus <royopa [at] gmail [dot] com>
|
||||
--INI--
|
||||
date.timezone = UTC;
|
||||
date_default_timezone_set("America/Sao_Paulo");
|
||||
--FILE--
|
||||
<?php
|
||||
var_dump(timezone_version_get());
|
||||
?>
|
||||
--EXPECTREGEX--
|
||||
string\([6-7]\) \"20[0-9][0-9]\.[1-9][0-9]?\"
|
Loading…
Add table
Add a link
Reference in a new issue