From 16660934cc48f357b1322bce7869158db2f7cb58 Mon Sep 17 00:00:00 2001 From: wei <> Date: Fri, 6 Jan 2006 05:32:33 +0000 Subject: Adding I18N unit test cases. --- .../framework/I18N/testNumberFormatInfo.php | 105 +++++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 tests/UnitTests/framework/I18N/testNumberFormatInfo.php (limited to 'tests/UnitTests/framework/I18N/testNumberFormatInfo.php') diff --git a/tests/UnitTests/framework/I18N/testNumberFormatInfo.php b/tests/UnitTests/framework/I18N/testNumberFormatInfo.php new file mode 100644 index 00000000..0b0a3140 --- /dev/null +++ b/tests/UnitTests/framework/I18N/testNumberFormatInfo.php @@ -0,0 +1,105 @@ +UnitTestCase(); + } + + function testCurrencyPatterns() + { + $numberInfo = NumberFormatInfo::getCurrencyInstance(); + + //there should be 2 decimal places. + $this->assertEqual($numberInfo->DecimalDigits,2); + + $this->assertEqual($numberInfo->DecimalSeparator,'.'); + + $this->assertEqual($numberInfo->GroupSeparator,','); + + //there should be only 1 grouping of size 3 + $groupsize = array(3,false); + $this->assertEqual($numberInfo->GroupSizes, $groupsize); + + //the default negative pattern prefix and postfix + $negPattern = array('-¤',''); + $this->assertEqual($numberInfo->NegativePattern, $negPattern); + + //the default positive pattern prefix and postfix + $negPattern = array('¤',''); + $this->assertEqual($numberInfo->PositivePattern, $negPattern); + + //the default currency symbol + $this->assertEqual($numberInfo->CurrencySymbol, 'US$'); + + $this->assertEqual($numberInfo->getCurrencySymbol('JPY'), '¥'); + + $this->assertEqual($numberInfo->NegativeInfinitySymbol, '-∞'); + + $this->assertEqual($numberInfo->PositiveInfinitySymbol, '+∞'); + + $this->assertEqual($numberInfo->NegativeSign, '-'); + + $this->assertEqual($numberInfo->PositiveSign, '+'); + + $this->assertEqual($numberInfo->NaNSymbol, '�'); + + $this->assertEqual($numberInfo->PercentSymbol, '%'); + + $this->assertEqual($numberInfo->PerMilleSymbol, '‰'); + + } + + function testPatternsSet() + { + $numberInfo = NumberFormatInfo::getInstance(); + + $numberInfo->DecimalDigits = 0; + $this->assertEqual($numberInfo->DecimalDigits,0); + + $numberInfo->DecimalSeparator = ','; + $this->assertEqual($numberInfo->DecimalSeparator,','); + + $numberInfo->GroupSeparator = ' '; + $this->assertEqual($numberInfo->GroupSeparator,' '); + + $numberInfo->GroupSizes = array(2,3); + $groupsize = array(2,3); + $this->assertEqual($numberInfo->GroupSizes, $groupsize); + + $numberInfo->NegativePattern = array('-$$','.'); + $negPattern = array('-$$','.'); + $this->assertEqual($numberInfo->NegativePattern, $negPattern); + + $numberInfo->PositivePattern = array('YY','.'); + $negPattern = array('YY','.'); + $this->assertEqual($numberInfo->PositivePattern, $negPattern); + + //the default CurrencySymbol symbol + $numberInfo->CurrencySymbol = '$$$'; + $this->assertEqual($numberInfo->CurrencySymbol, '$$$'); + } + + function testLocalizedPatterns() + { + $fr = NumberFormatInfo::getInstance('fr'); + $de = NumberFormatInfo::getInstance('de'); + $en = NumberFormatInfo::getInstance('en_US'); + + $this->assertEqual($fr->DecimalSeparator, ','); + $this->assertEqual($de->DecimalSeparator, ','); + $this->assertEqual($en->DecimalSeparator, '.'); + + $this->assertEqual($fr->GroupSeparator, ' '); + $this->assertEqual($de->GroupSeparator, '.'); + $this->assertEqual($en->GroupSeparator, ','); + } + +} + +?> \ No newline at end of file -- cgit v1.2.3