diff options
| author | andy wharmby <wharmby@php.net> | 2009-06-18 21:14:15 +0000 |
|---|---|---|
| committer | andy wharmby <wharmby@php.net> | 2009-06-18 21:14:15 +0000 |
| commit | 7c7dd8b7125812f4f8f5af8234860ca48d907e5c (patch) | |
| tree | a88b018fa6edb229a22823eeeec1bb713a89efa3 | |
| parent | 9851acba7bb60d01a5d2198a64b36a6ead9e82d9 (diff) | |
| download | php-git-7c7dd8b7125812f4f8f5af8234860ca48d907e5c.tar.gz | |
Basic tests for strftime(). Tested on Windows (all tests skip), Linux and Liinux 64 bit
| -rw-r--r-- | ext/standard/tests/time/strptime_basic.phpt | 99 | ||||
| -rw-r--r-- | ext/standard/tests/time/strptime_error.phpt | 55 |
2 files changed, 154 insertions, 0 deletions
diff --git a/ext/standard/tests/time/strptime_basic.phpt b/ext/standard/tests/time/strptime_basic.phpt new file mode 100644 index 0000000000..a3fa435d8c --- /dev/null +++ b/ext/standard/tests/time/strptime_basic.phpt @@ -0,0 +1,99 @@ +--TEST-- +Test strptime() function : basic functionality +--SKIPIF-- +<?php + if (!function_exists('strptime')) { + die("skip - strptime() function not available in this build"); + } +?> + +--FILE-- +<?php +/* Prototype : array strptime ( string $date , string $format ) + * Description: Parse a time/date generated with strftime() + * Source code: ext/standard/datetime.c +*/ + +$orig = setlocale(LC_ALL, 'C'); +date_default_timezone_set("GMT"); + +echo "*** Testing strptime() : basic functionality ***\n"; + +$input = "10:00:00 AM July 2 1963"; +$tstamp = strtotime($input); + +$str = strftime("%r %B%e %Y %Z", $tstamp); +var_dump(strptime($str, '%H:%M:%S %p %B %d %Y %Z')); + +$str = strftime("%T %D", $tstamp); +var_dump(strptime($str, '%H:%M:%S %m/%d/%y')); + +$str = strftime("%A %B %e %R", $tstamp); +var_dump(strptime($str, '%A %B %e %R')); + +setlocale(LC_ALL, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing strptime() : basic functionality *** +array(9) { + ["tm_sec"]=> + int(0) + ["tm_min"]=> + int(0) + ["tm_hour"]=> + int(10) + ["tm_mday"]=> + int(2) + ["tm_mon"]=> + int(6) + ["tm_year"]=> + int(63) + ["tm_wday"]=> + int(2) + ["tm_yday"]=> + int(182) + ["unparsed"]=> + string(3) "GMT" +} +array(9) { + ["tm_sec"]=> + int(0) + ["tm_min"]=> + int(0) + ["tm_hour"]=> + int(10) + ["tm_mday"]=> + int(2) + ["tm_mon"]=> + int(6) + ["tm_year"]=> + int(163) + ["tm_wday"]=> + int(1) + ["tm_yday"]=> + int(182) + ["unparsed"]=> + string(0) "" +} +array(9) { + ["tm_sec"]=> + int(0) + ["tm_min"]=> + int(0) + ["tm_hour"]=> + int(10) + ["tm_mday"]=> + int(2) + ["tm_mon"]=> + int(6) + ["tm_year"]=> + int(0) + ["tm_wday"]=> + int(2) + ["tm_yday"]=> + int(182) + ["unparsed"]=> + string(0) "" +} +===DONE=== diff --git a/ext/standard/tests/time/strptime_error.phpt b/ext/standard/tests/time/strptime_error.phpt new file mode 100644 index 0000000000..92c7ca3474 --- /dev/null +++ b/ext/standard/tests/time/strptime_error.phpt @@ -0,0 +1,55 @@ +--TEST-- +Test localtime() function : error conditions +--SKIPIF-- +<?php +if (!function_exists('strptime')) { + echo "SKIP strptime function not available in build"; +} +?> +--FILE-- +<?php +/* Prototype : array strptime ( string $date , string $format ) + * Description: Parse a time/date generated with strftime() + * Source code: ext/standard/datetime.c + * Alias to functions: + */ + +//Set the default time zone +date_default_timezone_set("Europe/London"); + +echo "*** Testing strptime() : error conditions ***\n"; + +echo "\n-- Testing strptime() function with Zero arguments --\n"; +var_dump( strptime() ); + +echo "\n-- Testing strptime() function with less than expected no. of arguments --\n"; +$format = '%b %d %Y %H:%M:%S'; +$timestamp = mktime(8, 8, 8, 8, 8, 2008); +$date = strftime($format, $timestamp); +var_dump( strptime($date) ); + +echo "\n-- Testing strptime() function with more than expected no. of arguments --\n"; +$extra_arg = 10; +var_dump( strptime($date, $format, $extra_arg) ); + +?> +===DONE=== +--EXPECTF-- +*** Testing strptime() : error conditions *** + +-- Testing strptime() function with Zero arguments -- + +Warning: strptime() expects exactly 2 parameters, 0 given in %s on line %d +NULL + +-- Testing strptime() function with less than expected no. of arguments -- + +Warning: strptime() expects exactly 2 parameters, 1 given in %s on line %d +NULL + +-- Testing strptime() function with more than expected no. of arguments -- + +Warning: strptime() expects exactly 2 parameters, 3 given in %s on line %d +NULL +===DONE=== + |
