From 0d3d1b172b7f4c4775cd12138ec56edfac8a6dc2 Mon Sep 17 00:00:00 2001 From: mattip Date: Mon, 27 May 2019 20:17:52 +0300 Subject: BUG: special case object arrays when printing rel-, abs-error --- numpy/testing/_private/utils.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'numpy/testing/_private/utils.py') diff --git a/numpy/testing/_private/utils.py b/numpy/testing/_private/utils.py index ee8eac9e8..53181bc49 100644 --- a/numpy/testing/_private/utils.py +++ b/numpy/testing/_private/utils.py @@ -812,14 +812,22 @@ def assert_array_compare(comparison, x, y, err_msg='', verbose=True, with contextlib.suppress(TypeError): error = abs(x - y) max_abs_error = error.max() - remarks.append('Max absolute difference: ' - + array2string(max_abs_error)) + if error.dtype == 'object': + remarks.append('Max absolute difference: ' + + str(max_abs_error)) + else: + remarks.append('Max absolute difference: ' + + array2string(max_abs_error)) # note: this definition of relative error matches that one # used by assert_allclose (found in np.isclose) max_rel_error = (error / abs(y)).max() - remarks.append('Max relative difference: ' - + array2string(max_rel_error)) + if error.dtype == 'object': + remarks.append('Max relative difference: ' + + str(max_rel_error)) + else: + remarks.append('Max relative difference: ' + + array2string(max_rel_error)) err_msg += '\n' + '\n'.join(remarks) msg = build_err_msg([ox, oy], err_msg, -- cgit v1.2.1