summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_format.py
diff options
context:
space:
mode:
authorMartin Panter <vadmium+py@gmail.com>2016-12-11 01:07:29 (GMT)
committerMartin Panter <vadmium+py@gmail.com>2016-12-11 01:07:29 (GMT)
commit41176ae1d2f4ab6dc0f7fc4ea76efad1248c0c5b (patch)
tree1bde1c9c341c911c363ef7993ea101735468c7c7 /Lib/test/test_format.py
parentbc538e38527bf836291be5b6ac28644b27abd07e (diff)
downloadcpython-41176ae1d2f4ab6dc0f7fc4ea76efad1248c0c5b.zip
cpython-41176ae1d2f4ab6dc0f7fc4ea76efad1248c0c5b.tar.gz
cpython-41176ae1d2f4ab6dc0f7fc4ea76efad1248c0c5b.tar.bz2
Issue #28916: Correct description of %o and %x alternative forms
* In Python 3, the specifier is 0o * There is no special case for leading zeros * Remove duplicate tests * Clarify other existing tests and comments
Diffstat (limited to 'Lib/test/test_format.py')
-rw-r--r--Lib/test/test_format.py26
1 files changed, 6 insertions, 20 deletions
diff --git a/Lib/test/test_format.py b/Lib/test/test_format.py
index 9b13632..699b717 100644
--- a/Lib/test/test_format.py
+++ b/Lib/test/test_format.py
@@ -200,42 +200,28 @@ class FormatTest(unittest.TestCase):
testcommon("%#+37.34o", big, "+0o0012345670123456701234567012345670")
# next one gets one leading zero from precision
testcommon("%.33o", big, "012345670123456701234567012345670")
- # base marker shouldn't change that, since "0" is redundant
+ # base marker added in spite of leading zero (different to Python 2)
testcommon("%#.33o", big, "0o012345670123456701234567012345670")
- # but reduce precision, and base marker should add a zero
+ # reduce precision, and base marker is always added
testcommon("%#.32o", big, "0o12345670123456701234567012345670")
- # one leading zero from precision, and another from "0" flag & width
- testcommon("%034.33o", big, "0012345670123456701234567012345670")
- # base marker shouldn't change that
- testcommon("%0#34.33o", big, "0o012345670123456701234567012345670")
+ # one leading zero from precision, plus two from "0" flag & width
+ testcommon("%035.33o", big, "00012345670123456701234567012345670")
+ # base marker shouldn't change the size
+ testcommon("%0#35.33o", big, "0o012345670123456701234567012345670")
# Some small ints, in both Python int and flavors).
testcommon("%d", 42, "42")
testcommon("%d", -42, "-42")
- testcommon("%d", 42, "42")
- testcommon("%d", -42, "-42")
testcommon("%d", 42.0, "42")
testcommon("%#x", 1, "0x1")
- testcommon("%#x", 1, "0x1")
- testcommon("%#X", 1, "0X1")
testcommon("%#X", 1, "0X1")
testcommon("%#o", 1, "0o1")
- testcommon("%#o", 1, "0o1")
- testcommon("%#o", 0, "0o0")
testcommon("%#o", 0, "0o0")
testcommon("%o", 0, "0")
- testcommon("%o", 0, "0")
testcommon("%d", 0, "0")
- testcommon("%d", 0, "0")
- testcommon("%#x", 0, "0x0")
testcommon("%#x", 0, "0x0")
testcommon("%#X", 0, "0X0")
- testcommon("%#X", 0, "0X0")
testcommon("%x", 0x42, "42")
testcommon("%x", -0x42, "-42")
- testcommon("%x", 0x42, "42")
- testcommon("%x", -0x42, "-42")
- testcommon("%o", 0o42, "42")
- testcommon("%o", -0o42, "-42")
testcommon("%o", 0o42, "42")
testcommon("%o", -0o42, "-42")
# alternate float formatting