summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Malyshev <stas@php.net>2011-08-31 07:34:07 +0000
committerStanislav Malyshev <stas@php.net>2011-08-31 07:34:07 +0000
commitc268811b018f43625ac86ae1971b131c1dae4572 (patch)
tree07d3f7526ece3c0e85a4f2fcf3be0f2f8ad88572
parent8b4ac6bb8f5b2b991fcccbcc51749ec655ba4d10 (diff)
downloadphp-git-c268811b018f43625ac86ae1971b131c1dae4572.tar.gz
fix strptime tests for mac
-rw-r--r--ext/standard/tests/time/strptime_basic.phpt1
-rw-r--r--ext/standard/tests/time/strptime_parts.phpt76
2 files changed, 77 insertions, 0 deletions
diff --git a/ext/standard/tests/time/strptime_basic.phpt b/ext/standard/tests/time/strptime_basic.phpt
index a3fa435d8c..194a78f82b 100644
--- a/ext/standard/tests/time/strptime_basic.phpt
+++ b/ext/standard/tests/time/strptime_basic.phpt
@@ -5,6 +5,7 @@ Test strptime() function : basic functionality
if (!function_exists('strptime')) {
die("skip - strptime() function not available in this build");
}
+ if(PHP_OS == 'Darwin') die("skip - strptime() behaves differently on Darwin");
?>
--FILE--
diff --git a/ext/standard/tests/time/strptime_parts.phpt b/ext/standard/tests/time/strptime_parts.phpt
new file mode 100644
index 0000000000..fbe684b863
--- /dev/null
+++ b/ext/standard/tests/time/strptime_parts.phpt
@@ -0,0 +1,76 @@
+--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");
+putenv("TZ=GMT");
+
+echo "*** Testing strptime() : basic functionality ***\n";
+
+$input = "10:01:20 AM July 2 1963";
+$tstamp = strtotime($input);
+
+$str = strftime("%r %B%e %Y %Z", $tstamp);
+$res = strptime($str, '%H:%M:%S %p %B %d %Y %Z');
+var_dump($res["tm_sec"]);
+var_dump($res["tm_min"]);
+var_dump($res["tm_hour"]);
+var_dump($res["tm_mday"]);
+var_dump($res["tm_mon"]);
+var_dump($res["tm_year"]);
+
+$str = strftime("%T %D", $tstamp);
+$res = strptime($str, '%H:%M:%S %m/%d/%y');
+var_dump($res["tm_sec"]);
+var_dump($res["tm_min"]);
+var_dump($res["tm_hour"]);
+var_dump($res["tm_mday"]);
+var_dump($res["tm_mon"]);
+var_dump($res["tm_year"]);
+
+$str = strftime("%A %B %e %R", $tstamp);
+$res = strptime($str, '%A %B %e %R');
+var_dump($res["tm_sec"]);
+var_dump($res["tm_min"]);
+var_dump($res["tm_hour"]);
+var_dump($res["tm_mday"]);
+var_dump($res["tm_mon"]);
+var_dump($res["tm_year"]);
+
+setlocale(LC_ALL, $orig);
+?>
+===DONE===
+--EXPECT--
+*** Testing strptime() : basic functionality ***
+int(20)
+int(1)
+int(10)
+int(2)
+int(6)
+int(63)
+int(20)
+int(1)
+int(10)
+int(2)
+int(6)
+int(163)
+int(0)
+int(1)
+int(10)
+int(2)
+int(6)
+int(0)
+===DONE===