Skip to content

Commit

Permalink
Merge branch 'hotfix/3795' into develop
Browse files Browse the repository at this point in the history
Forward port zendframework#3795
  • Loading branch information
weierophinney committed Feb 19, 2013
2 parents 12e18cb + 8181bad commit 97213e9
Showing 1 changed file with 61 additions and 61 deletions.
122 changes: 61 additions & 61 deletions tests/ZendTest/I18n/View/Helper/DateFormatTest.php
Expand Up @@ -56,131 +56,115 @@ 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,
// 'Dienstag, 3. Juli 2012 00:44:03 Deutschland',
// ),
array(
'de_DE',
'Europe/Berlin',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
$date,
),
array(
'de_DE',
'Europe/Berlin',
IntlDateFormatter::LONG,
IntlDateFormatter::LONG,
$date,
'3. Juli 2012 00:44:03 MESZ',
),
array(
'de_DE',
'Europe/Berlin',
IntlDateFormatter::MEDIUM,
IntlDateFormatter::MEDIUM,
$date,
'03.07.2012 00:44:03',
),
array(
'de_DE',
'Europe/Berlin',
IntlDateFormatter::SHORT,
IntlDateFormatter::SHORT,
$date,
'03.07.12 00:44',
),
// FULL format varies based on OS
// array(
// 'ru_RU',
// 'Europe/Moscow',
// IntlDateFormatter::FULL,
// IntlDateFormatter::FULL,
// $date,
// '3 июля 2012 г. 2:44:03 Россия (Москва)',
// ),
// LONG format varies based on OS for ru_RU locale
// array(
// 'ru_RU',
// 'Europe/Moscow',
// IntlDateFormatter::LONG,
// IntlDateFormatter::LONG,
// $date,
// '3 июля 2012 г. 2:44:03 GMT+04:00',
// ),
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',
IntlDateFormatter::MEDIUM,
IntlDateFormatter::MEDIUM,
$date,
'03.07.2012 2:44:03',
),
array(
'ru_RU',
'Europe/Moscow',
IntlDateFormatter::SHORT,
IntlDateFormatter::SHORT,
$date,
'03.07.12 2:44',
),
// FULL format varies based on OS
// array(
// 'en_US',
// 'America/New_York',
// IntlDateFormatter::FULL,
// IntlDateFormatter::FULL,
// $date,
// 'Monday, July 2, 2012 6:44:03 PM ET',
// ),
array(
'en_US',
'America/New_York',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
$date,
),
array(
'en_US',
'America/New_York',
IntlDateFormatter::LONG,
IntlDateFormatter::LONG,
$date,
'July 2, 2012 6:44:03 PM EDT',
),
array(
'en_US',
'America/New_York',
IntlDateFormatter::MEDIUM,
IntlDateFormatter::MEDIUM,
$date,
'Jul 2, 2012 6:44:03 PM',
),
array(
'en_US',
'America/New_York',
IntlDateFormatter::SHORT,
IntlDateFormatter::SHORT,
$date,
'7/2/12 6:44 PM',
),
);
}

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,
// 'Dienstag, 3. Juli 2012 00:44:03 Deutschland',
// ),
array(
'de_DE',
'Europe/Berlin',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'dd-MM',
$date,
),
array(
'de_DE',
'Europe/Berlin',
null,
null,
'MMMM',
$date,
'Juli',
),
array(
'de_DE',
Expand All @@ -189,7 +173,6 @@ public function dateTestsDataProviderWithPattern()
null,
'MMMM.Y',
$date,
'Juli.2012',
),
array(
'de_DE',
Expand All @@ -198,17 +181,21 @@ public function dateTestsDataProviderWithPattern()
null,
'dd/Y',
$date,
'03/2012',
),
);
}

/**
* @dataProvider dateTestsDataProvider
*/
public function testBasic($locale, $timezone, $timeType, $dateType, $date, $expected)
public function testBasic($locale, $timezone, $timeType, $dateType, $date)
{
$this->helper->setTimezone($timezone);
$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
));
Expand All @@ -217,12 +204,15 @@ public function testBasic($locale, $timezone, $timeType, $dateType, $date, $expe
/**
* @dataProvider dateTestsDataProvider
*/
public function testSettersProvideDefaults($locale, $timezone, $timeType, $dateType, $date, $expected)
public function testSettersProvideDefaults($locale, $timezone, $timeType, $dateType, $date)
{
$this->helper
->setTimezone($timezone)
->setLocale($locale);

$expected = $this->getIntlDateFormatter($locale, $dateType, $timeType, $timezone)
->format($date->getTimestamp());

$this->assertMbStringEquals($expected, $this->helper->__invoke(
$date, $dateType, $timeType
));
Expand All @@ -231,9 +221,14 @@ public function testSettersProvideDefaults($locale, $timezone, $timeType, $dateT
/**
* @dataProvider dateTestsDataProviderWithPattern
*/
public function testUseCustomPattern($locale, $timezone, $timeType, $dateType, $pattern, $date, $expected)
public function testUseCustomPattern($locale, $timezone, $timeType, $dateType, $pattern, $date)
{
$this->helper->setTimezone($timezone);
$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
));
Expand All @@ -260,4 +255,9 @@ public function assertMbStringEquals($expected, $test, $message = '')
$test = str_replace(array("\xC2\xA0", ' '), '', $test);
$this->assertEquals($expected, $test, $message);
}

public function getIntlDateFormatter($locale, $dateType, $timeType, $timezone, $pattern=null)
{
return new IntlDateFormatter($locale, $dateType, $timeType, $timezone, null, $pattern);
}
}

0 comments on commit 97213e9

Please sign in to comment.