From e5635f4ab3d0fd00dd3951865fea82003205dae1 Mon Sep 17 00:00:00 2001 From: Damien George Date: Thu, 1 Oct 2015 22:48:48 +0100 Subject: py: Catch all cases of integer (big and small) division by zero. --- tests/basics/builtin_divmod.py | 5 +++++ tests/basics/int_big_error.py | 10 ++++++++++ tests/basics/int_divzero.py | 5 +++++ tests/float/int_big_float.py | 5 +++++ 4 files changed, 25 insertions(+) (limited to 'tests') diff --git a/tests/basics/builtin_divmod.py b/tests/basics/builtin_divmod.py index e3eff306b..c3b865819 100644 --- a/tests/basics/builtin_divmod.py +++ b/tests/basics/builtin_divmod.py @@ -9,6 +9,11 @@ try: except ZeroDivisionError: print("ZeroDivisionError") +try: + divmod(1 << 65, 0) +except ZeroDivisionError: + print("ZeroDivisionError") + try: divmod('a', 'b') except TypeError: diff --git a/tests/basics/int_big_error.py b/tests/basics/int_big_error.py index b7875ee87..e036525d1 100644 --- a/tests/basics/int_big_error.py +++ b/tests/basics/int_big_error.py @@ -29,3 +29,13 @@ try: i << (-(i >> 40)) except ValueError: print('ValueError') + +try: + i // 0 +except ZeroDivisionError: + print('ZeroDivisionError') + +try: + i % 0 +except ZeroDivisionError: + print('ZeroDivisionError') diff --git a/tests/basics/int_divzero.py b/tests/basics/int_divzero.py index 28ec2a699..aa38eee1d 100644 --- a/tests/basics/int_divzero.py +++ b/tests/basics/int_divzero.py @@ -2,3 +2,8 @@ try: 1 // 0 except ZeroDivisionError: print("ZeroDivisionError") + +try: + 1 % 0 +except ZeroDivisionError: + print("ZeroDivisionError") diff --git a/tests/float/int_big_float.py b/tests/float/int_big_float.py index 2c404189c..b1a26ca73 100644 --- a/tests/float/int_big_float.py +++ b/tests/float/int_big_float.py @@ -17,3 +17,8 @@ print("%.5g" % (i / 1.2)) # this should delegate to complex print("%.5g" % (i * 1.2j).imag) + +try: + i / 0 +except ZeroDivisionError: + print("ZeroDivisionError") -- cgit v1.2.3