Mercurial > babel > mirror
comparison babel/tests/numbers.py @ 50:0896af2c49ec trunk
Added round-half-even (banker's rounding) support.
Moved a couple of unit-tests from docstrings to a separate file.
author | jonas |
---|---|
date | Thu, 07 Jun 2007 22:00:43 +0000 |
parents | e6ba3e878b10 |
children | 2df27f49c320 |
comparison
equal
deleted
inserted
replaced
49:37bd476dafe4 | 50:0896af2c49ec |
---|---|
14 import doctest | 14 import doctest |
15 import unittest | 15 import unittest |
16 | 16 |
17 from babel import numbers | 17 from babel import numbers |
18 | 18 |
19 | |
20 class FormatDecimalTestCase(unittest.TestCase): | |
21 | |
22 def test_subpatterns(self): | |
23 self.assertEqual(numbers.format_decimal(-12345, '#,##0.##;-#', | |
24 locale='en_US'), '-12,345') | |
25 self.assertEqual(numbers.format_decimal(-12345, '#,##0.##;(#)', | |
26 locale='en_US'), '(12,345)') | |
27 | |
28 def test_default_rounding(self): | |
29 """Testing Round-Half-Even (Banker's rounding) | |
30 | |
31 A '5' is rounded to the closest 'even' number | |
32 """ | |
33 self.assertEqual(numbers.format_decimal(5.5, '0', locale='sv'), '6') | |
34 self.assertEqual(numbers.format_decimal(6.5, '0', locale='sv'), '6') | |
35 self.assertEqual(numbers.format_decimal(1.2325, locale='sv'), '1,232') | |
36 self.assertEqual(numbers.format_decimal(1.2325, locale='sv'), '1,232') | |
37 self.assertEqual(numbers.format_decimal(1.2335, locale='sv'), '1,234') | |
38 | |
39 | |
19 def suite(): | 40 def suite(): |
20 suite = unittest.TestSuite() | 41 suite = unittest.TestSuite() |
21 suite.addTest(doctest.DocTestSuite(numbers)) | 42 suite.addTest(doctest.DocTestSuite(numbers)) |
43 suite.addTest(unittest.makeSuite(FormatDecimalTestCase)) | |
22 return suite | 44 return suite |
23 | 45 |
24 if __name__ == '__main__': | 46 if __name__ == '__main__': |
25 unittest.main(defaultTest='suite') | 47 unittest.main(defaultTest='suite') |