Commit d10bcdbb authored by Stefan Behnel's avatar Stefan Behnel

Py3 doctest fix

parent 6787f000
...@@ -31,12 +31,16 @@ True ...@@ -31,12 +31,16 @@ True
True True
>>> all([div_int_py(a,b) == a // b for a in range(-10, 10) for b in range(-10, 10) if b != 0]) >>> all([div_int_py(a,b) == a // b for a in range(-10, 10) for b in range(-10, 10) if b != 0])
True True
"""
>>> def simple_warn(msg, *args): print(msg) import warnings
>>> import warnings orig_showwarning = warnings.showwarning
>>> warnings.showwarning = simple_warn
true_py_functions = {}
exec "def simple_warn(msg, *args): print(msg)" in true_py_functions
simple_warn = true_py_functions['simple_warn']
del true_py_functions
"""
def _all(seq): def _all(seq):
for x in seq: for x in seq:
...@@ -100,9 +104,11 @@ def test_cdiv_cmod(short a, short b): ...@@ -100,9 +104,11 @@ def test_cdiv_cmod(short a, short b):
@cython.cdivision_warnings(True) @cython.cdivision_warnings(True)
def mod_int_c_warn(int a, int b): def mod_int_c_warn(int a, int b):
""" """
>>> warnings.showwarning = simple_warn
>>> mod_int_c_warn(-17, 10) >>> mod_int_c_warn(-17, 10)
division with oppositely signed operands, C and Python semantics differ division with oppositely signed operands, C and Python semantics differ
-7 -7
>>> warnings.showwarning = orig_showwarning
""" """
return a % b return a % b
...@@ -110,9 +116,11 @@ def mod_int_c_warn(int a, int b): ...@@ -110,9 +116,11 @@ def mod_int_c_warn(int a, int b):
@cython.cdivision_warnings(True) @cython.cdivision_warnings(True)
def div_int_c_warn(int a, int b): def div_int_c_warn(int a, int b):
""" """
>>> warnings.showwarning = simple_warn
>>> div_int_c_warn(-17, 10) >>> div_int_c_warn(-17, 10)
division with oppositely signed operands, C and Python semantics differ division with oppositely signed operands, C and Python semantics differ
-1 -1
>>> warnings.showwarning = orig_showwarning
""" """
return a // b return a // b
...@@ -120,12 +128,14 @@ def div_int_c_warn(int a, int b): ...@@ -120,12 +128,14 @@ def div_int_c_warn(int a, int b):
@cython.cdivision_warnings(True) @cython.cdivision_warnings(True)
def complex_expression(int a, int b, int c, int d): def complex_expression(int a, int b, int c, int d):
""" """
>>> warnings.showwarning = simple_warn
>>> complex_expression(-150, 20, 19, -7) >>> complex_expression(-150, 20, 19, -7)
verbose_call(20) verbose_call(20)
division with oppositely signed operands, C and Python semantics differ division with oppositely signed operands, C and Python semantics differ
verbose_call(19) verbose_call(19)
division with oppositely signed operands, C and Python semantics differ division with oppositely signed operands, C and Python semantics differ
-2 -2
>>> warnings.showwarning = orig_showwarning
""" """
return (a // verbose_call(b)) % (verbose_call(c) // d) return (a // verbose_call(b)) % (verbose_call(c) // d)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment