From b16651023f0f94c4d4c8a8c7af5d3035f1ffbb00 Mon Sep 17 00:00:00 2001 From: Mike Willbanks Date: Fri, 15 Feb 2013 09:52:08 -0800 Subject: [PATCH] Resolved issues with 5.3.3 intl, removed commented tests that can now all pass --- test/View/Helper/DateFormatTest.php | 97 ++++++++++++++++------------- 1 file changed, 52 insertions(+), 45 deletions(-) diff --git a/test/View/Helper/DateFormatTest.php b/test/View/Helper/DateFormatTest.php index e845cf21..7d5d2a7d 100644 --- a/test/View/Helper/DateFormatTest.php +++ b/test/View/Helper/DateFormatTest.php @@ -56,15 +56,15 @@ public function tearDown() public function dateTestsDataProvider() { $date = new DateTime('2012-07-02T22:44:03Z'); + return array( - // FULL format varies based on OS - // array( - // 'de_DE', - // 'Europe/Berlin', - // IntlDateFormatter::FULL, - // IntlDateFormatter::FULL, - // $date, - // ), + array( + 'de_DE', + 'Europe/Berlin', + IntlDateFormatter::FULL, + IntlDateFormatter::FULL, + $date, + ), array( 'de_DE', 'Europe/Berlin', @@ -86,22 +86,20 @@ public function dateTestsDataProvider() IntlDateFormatter::SHORT, $date, ), - // FULL format varies based on OS - // array( - // 'ru_RU', - // 'Europe/Moscow', - // IntlDateFormatter::FULL, - // IntlDateFormatter::FULL, - // $date, - // ), - // LONG format varies based on OS for ru_RU locale - // array( - // 'ru_RU', - // 'Europe/Moscow', - // IntlDateFormatter::LONG, - // IntlDateFormatter::LONG, - // $date, - // ), + array( + 'ru_RU', + 'Europe/Moscow', + IntlDateFormatter::FULL, + IntlDateFormatter::FULL, + $date, + ), + array( + 'ru_RU', + 'Europe/Moscow', + IntlDateFormatter::LONG, + IntlDateFormatter::LONG, + $date, + ), array( 'ru_RU', 'Europe/Moscow', @@ -116,14 +114,13 @@ public function dateTestsDataProvider() IntlDateFormatter::SHORT, $date, ), - // FULL format varies based on OS - // array( - // 'en_US', - // 'America/New_York', - // IntlDateFormatter::FULL, - // IntlDateFormatter::FULL, - // $date, - // ), + array( + 'en_US', + 'America/New_York', + IntlDateFormatter::FULL, + IntlDateFormatter::FULL, + $date, + ), array( 'en_US', 'America/New_York', @@ -151,15 +148,16 @@ public function dateTestsDataProvider() public function dateTestsDataProviderWithPattern() { $date = new DateTime('2012-07-02T22:44:03Z'); + return array( - // FULL format varies based on OS - // array( - // 'de_DE', - // 'Europe/Berlin', - // IntlDateFormatter::FULL, - // IntlDateFormatter::FULL, - // $date, - // ), + array( + 'de_DE', + 'Europe/Berlin', + IntlDateFormatter::FULL, + IntlDateFormatter::FULL, + 'dd-MM', + $date, + ), array( 'de_DE', 'Europe/Berlin', @@ -192,8 +190,12 @@ public function dateTestsDataProviderWithPattern() */ public function testBasic($locale, $timezone, $timeType, $dateType, $date) { - $this->helper->setTimezone($timezone); - $expected = $this->getIntlDateFormatter($locale, $dateType, $timeType, $timezone)->format($date); + $this->helper + ->setTimezone($timezone); + + $expected = $this->getIntlDateFormatter($locale, $dateType, $timeType, $timezone) + ->format($date->getTimestamp()); + $this->assertMbStringEquals($expected, $this->helper->__invoke( $date, $dateType, $timeType, $locale, null )); @@ -208,7 +210,8 @@ public function testSettersProvideDefaults($locale, $timezone, $timeType, $dateT ->setTimezone($timezone) ->setLocale($locale); - $expected = $this->getIntlDateFormatter($locale, $dateType, $timeType, $timezone)->format($date); + $expected = $this->getIntlDateFormatter($locale, $dateType, $timeType, $timezone) + ->format($date->getTimestamp()); $this->assertMbStringEquals($expected, $this->helper->__invoke( $date, $dateType, $timeType @@ -220,8 +223,12 @@ public function testSettersProvideDefaults($locale, $timezone, $timeType, $dateT */ public function testUseCustomPattern($locale, $timezone, $timeType, $dateType, $pattern, $date) { - $this->helper->setTimezone($timezone); - $expected = $this->getIntlDateFormatter($locale, $dateType, $timeType, $timezone, $pattern)->format($date); + $this->helper + ->setTimezone($timezone); + + $expected = $this->getIntlDateFormatter($locale, $dateType, $timeType, $timezone, $pattern) + ->format($date->getTimestamp()); + $this->assertMbStringEquals($expected, $this->helper->__invoke( $date, $dateType, $timeType, $locale, $pattern ));