Browse Source

added DateTimeHelper::ISO8601_DATE_FORMAT

Fabian Peter Hammerle 7 years ago
parent
commit
0b2ebcbadf
2 changed files with 21 additions and 1 deletions
  1. 3 1
      DateTimeHelper.php
  2. 18 0
      tests/DateTimeHelperTest.php

+ 3 - 1
DateTimeHelper.php

@@ -4,6 +4,8 @@ namespace fphammerle\helpers;
 
 class DateTimeHelper
 {
+    const ISO8601_DATE_FORMAT = 'Y-m-d';
+
     const _timezone_iso_pattern = '(?P<tz>Z|[\+-]\d{2}.\d{2})';
 
     /**
@@ -177,7 +179,7 @@ class DateTimeHelper
             }
         } else {
             throw new \InvalidArgumentException(sprintf(
-                "expected \\DateTime, \\DateInterval or \\DatePeriod\n%s", 
+                "expected \\DateTime, \\DateInterval or \\DatePeriod\n%s",
                 print_r($i, true)
                 ));
         }

+ 18 - 0
tests/DateTimeHelperTest.php

@@ -9,6 +9,24 @@ use \fphammerle\helpers\DateTimeHelper;
 
 class DateTimeHelperTest extends \PHPUnit_Framework_TestCase
 {
+    public function iso6801DateFormatProvider()
+    {
+        return [
+            [0, '1970-01-01'],
+            [1456704000, '2016-02-29'],
+            [1479202824, '2016-11-15'],
+            ];
+    }
+
+    /**
+     * @dataProvider iso6801DateFormatProvider
+     */
+    public function testIso6801DateFormat($timestamp, $expected_date)
+    {
+        $date = date(DateTimeHelper::ISO8601_DATE_FORMAT, $timestamp);
+        $this->assertEquals($expected_date, $date);
+    }
+
     public function timestampToDateTimeProvider()
     {
         return [