summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--tests/float/string_format_modulo.py2
-rw-r--r--tests/float/string_format_modulo3.py4
-rw-r--r--tests/float/string_format_modulo3.py.exp3
3 files changed, 9 insertions, 0 deletions
diff --git a/tests/float/string_format_modulo.py b/tests/float/string_format_modulo.py
index 681e9eb806..03c8dd00aa 100644
--- a/tests/float/string_format_modulo.py
+++ b/tests/float/string_format_modulo.py
@@ -42,3 +42,5 @@ print(('%.40g' % 1e-1)[:2])
print(('%.40g' % 1e-2)[:2])
print(('%.40g' % 1e-3)[:2])
print(('%.40g' % 1e-4)[:2])
+
+print("%.0g" % 1) # 0 precision 'g'
diff --git a/tests/float/string_format_modulo3.py b/tests/float/string_format_modulo3.py
new file mode 100644
index 0000000000..5639647865
--- /dev/null
+++ b/tests/float/string_format_modulo3.py
@@ -0,0 +1,4 @@
+# uPy and CPython outputs differ for the following
+print("%.1g" % -9.9) # round up 'g' with '-' sign
+print("%.1e" % 9.99) # round up with positive exponent
+print("%.1e" % 0.999) # round up with negative exponent
diff --git a/tests/float/string_format_modulo3.py.exp b/tests/float/string_format_modulo3.py.exp
new file mode 100644
index 0000000000..b158c7d7f3
--- /dev/null
+++ b/tests/float/string_format_modulo3.py.exp
@@ -0,0 +1,3 @@
+-10
+1.00e+01
+1.00e-00