summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorEric Smith <eric@trueblade.com>2008-07-17 17:48:39 (GMT)
committerEric Smith <eric@trueblade.com>2008-07-17 17:48:39 (GMT)
commit454816d8bdd6ec9bb986aa31760518e622dc1ea7 (patch)
tree3ee9ce763f7c0545f625b9de580ca98722cb7080 /Lib
parent4347c44f1834887602402b7eec0e82214bd6bd1d (diff)
downloadcpython-454816d8bdd6ec9bb986aa31760518e622dc1ea7.zip
cpython-454816d8bdd6ec9bb986aa31760518e622dc1ea7.tar.gz
cpython-454816d8bdd6ec9bb986aa31760518e622dc1ea7.tar.bz2
Issue 3382: Make '%F' and float.__format__('F') convert results to upper case.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_format.py12
-rw-r--r--Lib/test/test_types.py12
2 files changed, 22 insertions, 2 deletions
diff --git a/Lib/test/test_format.py b/Lib/test/test_format.py
index cd46bc2..1268670 100644
--- a/Lib/test/test_format.py
+++ b/Lib/test/test_format.py
@@ -88,6 +88,18 @@ class FormatTest(unittest.TestCase):
testboth("%#.*F", (110, -1.e+100/3.))
overflowrequired = 0
+ # check for %f and %F
+ testboth("%f", (1.0,), "1.000000")
+ testboth("%F", (1.0,), "1.000000")
+ testboth("%f", (1e100,), "1e+100")
+ testboth("%F", (1e100,), "1E+100")
+ testboth("%f", (1e100,), "1e+100")
+ testboth("%F", (1e100,), "1E+100")
+ testboth("%f", (float('nan'),), "nan")
+ testboth("%F", (float('nan'),), "NAN")
+ testboth("%f", (float('inf'),), "inf")
+ testboth("%F", (float('inf'),), "INF")
+
# Formatting of long integers. Overflow is not ok
overflowok = 0
testboth("%x", 10L, "a")
diff --git a/Lib/test/test_types.py b/Lib/test/test_types.py
index 03f2ff8..78106a3 100644
--- a/Lib/test/test_types.py
+++ b/Lib/test/test_types.py
@@ -587,9 +587,17 @@ class TypesTests(unittest.TestCase):
test( 1.0, '+f', '+1.000000')
test(-1.0, '+f', '-1.000000')
test(1.1234e90, 'f', '1.1234e+90')
- test(1.1234e90, 'F', '1.1234e+90')
+ test(1.1234e90, 'F', '1.1234E+90')
test(1.1234e200, 'f', '1.1234e+200')
- test(1.1234e200, 'F', '1.1234e+200')
+ test(1.1234e200, 'F', '1.1234E+200')
+ test(1e100, 'x<20f', '1e+100xxxxxxxxxxxxxx')
+ test(1e100, 'x<20F', '1E+100xxxxxxxxxxxxxx')
+ test(float('nan'), 'f', 'nan')
+ test(float('nan'), 'F', 'NAN')
+ test(float('inf'), 'f', 'inf')
+ test(float('inf'), 'F', 'INF')
+ test(float('-inf'), 'f', '-inf')
+ test(float('-inf'), 'F', '-INF')
test( 1.0, 'e', '1.000000e+00')
test(-1.0, 'e', '-1.000000e+00')