From bacb52aa2dbf8dcb1e96aace28a85108ef0a8245 Mon Sep 17 00:00:00 2001 From: Damien George Date: Thu, 23 Mar 2017 23:54:10 +1100 Subject: [PATCH] tests/float: Add tests for math funcs that return ints. One should test bigint, inf and nan to make sure all cases are covered. --- tests/float/math_fun_int.py | 15 +++++++++++++++ tests/float/math_fun_intbig.py | 12 ++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 tests/float/math_fun_int.py create mode 100644 tests/float/math_fun_intbig.py diff --git a/tests/float/math_fun_int.py b/tests/float/math_fun_int.py new file mode 100644 index 000000000..ee54f0995 --- /dev/null +++ b/tests/float/math_fun_int.py @@ -0,0 +1,15 @@ +# test the math functions that return ints + +try: + import math +except ImportError: + print("SKIP") + import sys + sys.exit() + +for fun in (math.ceil, math.floor, math.trunc): + for x in (-1.6, -0.2, 0, 0.6, 1.4, float('inf'), float('nan')): + try: + print(fun(x)) + except (ValueError, OverflowError) as e: + print(type(e)) diff --git a/tests/float/math_fun_intbig.py b/tests/float/math_fun_intbig.py new file mode 100644 index 000000000..962c10daa --- /dev/null +++ b/tests/float/math_fun_intbig.py @@ -0,0 +1,12 @@ +# test the math functions that return ints, with very large results + +try: + import math +except ImportError: + print("SKIP") + import sys + sys.exit() + +for fun in (math.ceil, math.floor, math.trunc): + for x in (-1e25, 1e25): + print('%.3g' % fun(x))