numpy testing assert array NOT equal

Not sure why this hasn't been posted, may be I didn't understand the question properly, but what about:

assert not np.array_equal(array1 , array2)

Any reason why you would like to keep it exclusively in the testing module of numpy?


If you want to use specifically NumPy testing, then you can use numpy.testing.assert_array_equal together with numpy.testing.assert_raises for the opposite result. For example:

assert_raises(AssertionError, assert_array_equal, array_1, array_2)

Also there is numpy.testing.utils.assert_array_compare (it is used by numpy.testing.assert_array_equal), but I don't see it documented anywhere, so use with caution. This one will check that every element is different, so I guess this is not your use case:

import operator

assert_array_compare(operator.__ne__, array_1, array_2)

I don't think there is anything built directly into the NumPy testing framework but you could just use:

np.any(np.not_equal(a1,a2))

and assert true with the built in unittest framework or check with NumPy as assert_equal to True e.g.

np.testing.assert_equal(np.any(np.not_equal(a,a)), True)