From 48b3a6a236d229a203f5c20c705c901ee43ca4c2 Mon Sep 17 00:00:00 2001 From: knut <> Date: Mon, 30 Jan 2006 21:30:35 +0000 Subject: - Ported a few unit tests from the I18N package - Moving report stylesheets to buildscripts/phing - Added a build/dist target for both standard distribution and PEAR package to build.xml --- tests/unit/I18N/core/CultureInfoTest.php | 81 ++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 tests/unit/I18N/core/CultureInfoTest.php (limited to 'tests/unit/I18N/core/CultureInfoTest.php') diff --git a/tests/unit/I18N/core/CultureInfoTest.php b/tests/unit/I18N/core/CultureInfoTest.php new file mode 100644 index 00000000..14b60ece --- /dev/null +++ b/tests/unit/I18N/core/CultureInfoTest.php @@ -0,0 +1,81 @@ +culture = CultureInfo::getInvariantCulture(); + } + + function testCultureName() { + $name = 'en'; + + $this->assertEquals($name, $this->culture->Name); + + //the default/invariant culture should be neutral + $this->assertTrue($this->culture->IsNeutralCulture); + } + + function testCultureList() { + $allCultures = CultureInfo::getCultures(); + $neutralCultures = CultureInfo::getCultures(CultureInfo::NEUTRAL); + $specificCultures = CultureInfo::getCultures(CultureInfo::SPECIFIC); + + //there should be 246 cultures all together. + $this->assertEquals(count($allCultures),246); + $this->assertEquals(count($neutralCultures),76); + $this->assertEquals(count($specificCultures),170); + } + + function testParentCultures() { + $zh_CN = new CultureInfo('zh_CN'); + $parent = $zh_CN->Parent; + $grandparent = $parent->Parent; + + $this->assertEquals($zh_CN->Name, 'zh_CN'); + $this->assertEquals($parent->Name, 'zh'); + $this->assertEquals($grandparent->Name, 'en'); + $this->assertEquals($grandparent->Parent->Name, 'en'); + } + + function testCountryNames() { + $culture = new CultureInfo('fr_FR'); + $this->assertEquals($culture->Countries['AE'], 'Émirats arabes unis'); + } + + function testCurrencies() { + $culture = new CultureInfo('en_AU'); + $au = array('$', 'Australian Dollar'); + $this->assertEquals($au, $culture->Currencies['AUD']); + } + + function testLanguages() { + $culture = new CultureInfo('fr_BE'); + $this->assertEquals($culture->Languages['fr'], 'français'); + } + + function testScripts() { + $culture = new CultureInfo('fr'); + $this->assertEquals($culture->Scripts['Armn'], 'arménien'); + } + + function testTimeZones() { + $culture = new CultureInfo('fi'); + $zone = array( + "America/Los_Angeles", + "Tyynenmeren normaaliaika", + "PST", + "Tyynenmeren kesäaika", + "PDT", + "Los Angeles"); + $this->assertEquals($culture->TimeZones[1],$zone); + } +} + +?> \ No newline at end of file -- cgit v1.2.3