summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_decimal.py
diff options
context:
space:
mode:
authorMark Dickinson <dickinsm@gmail.com>2009-03-18 08:22:51 (GMT)
committerMark Dickinson <dickinsm@gmail.com>2009-03-18 08:22:51 (GMT)
commitb14514a153857141631d602cadf094bc932f12ee (patch)
treee21a28eb122b176d30d0af72d932f06b10ed8e78 /Lib/test/test_decimal.py
parentd914e3f8619df604ca6fa852fd210043b94f16e1 (diff)
downloadcpython-b14514a153857141631d602cadf094bc932f12ee.zip
cpython-b14514a153857141631d602cadf094bc932f12ee.tar.gz
cpython-b14514a153857141631d602cadf094bc932f12ee.tar.bz2
Fix bug in _insert_thousands_sep: too much zero padding could be
added for 'n' formats with non-repeating thousands-separator.
Diffstat (limited to 'Lib/test/test_decimal.py')
-rw-r--r--Lib/test/test_decimal.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/Lib/test/test_decimal.py b/Lib/test/test_decimal.py
index 6c071f1..bb5103c 100644
--- a/Lib/test/test_decimal.py
+++ b/Lib/test/test_decimal.py
@@ -809,6 +809,28 @@ class DecimalFormatTest(unittest.TestCase):
self.assertEqual(get_fmt(123456789, ru_RU, '.6n'), '1,23457e+8')
self.assertEqual(get_fmt(123456789, crazy, '.6n'), '1&23457e+8')
+ # zero padding
+ self.assertEqual(get_fmt(1234, fr_FR, '03n'), '1234')
+ self.assertEqual(get_fmt(1234, fr_FR, '04n'), '1234')
+ self.assertEqual(get_fmt(1234, fr_FR, '05n'), '01234')
+ self.assertEqual(get_fmt(1234, fr_FR, '06n'), '001234')
+
+ self.assertEqual(get_fmt(12345, en_US, '05n'), '12,345')
+ self.assertEqual(get_fmt(12345, en_US, '06n'), '12,345')
+ self.assertEqual(get_fmt(12345, en_US, '07n'), '012,345')
+ self.assertEqual(get_fmt(12345, en_US, '08n'), '0,012,345')
+ self.assertEqual(get_fmt(12345, en_US, '09n'), '0,012,345')
+ self.assertEqual(get_fmt(12345, en_US, '010n'), '00,012,345')
+
+ self.assertEqual(get_fmt(123456, crazy, '06n'), '1-2345-6')
+ self.assertEqual(get_fmt(123456, crazy, '07n'), '1-2345-6')
+ self.assertEqual(get_fmt(123456, crazy, '08n'), '1-2345-6')
+ self.assertEqual(get_fmt(123456, crazy, '09n'), '01-2345-6')
+ self.assertEqual(get_fmt(123456, crazy, '010n'), '0-01-2345-6')
+ self.assertEqual(get_fmt(123456, crazy, '011n'), '0-01-2345-6')
+ self.assertEqual(get_fmt(123456, crazy, '012n'), '00-01-2345-6')
+ self.assertEqual(get_fmt(123456, crazy, '013n'), '000-01-2345-6')
+
class DecimalArithmeticOperatorsTest(unittest.TestCase):
'''Unit tests for all arithmetic operators, binary and unary.'''