diff options
author | David Cournapeau <cournape@gmail.com> | 2009-07-27 08:07:48 +0000 |
---|---|---|
committer | David Cournapeau <cournape@gmail.com> | 2009-07-27 08:07:48 +0000 |
commit | e8b88c2d0529f2dac153e04537cf05d435a27a07 (patch) | |
tree | 5066d19d50bb9bb7c023d8f2c79a88e2f91940dd /numpy/testing/tests/test_utils.py | |
parent | 56caa44161152ffd4f354757c8d4d42007413f79 (diff) | |
download | numpy-e8b88c2d0529f2dac153e04537cf05d435a27a07.tar.gz |
BUG: handle nan/inf in assert_approx_equal.
Diffstat (limited to 'numpy/testing/tests/test_utils.py')
-rw-r--r-- | numpy/testing/tests/test_utils.py | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/numpy/testing/tests/test_utils.py b/numpy/testing/tests/test_utils.py index b8aaa4de4..fd07d3985 100644 --- a/numpy/testing/tests/test_utils.py +++ b/numpy/testing/tests/test_utils.py @@ -131,6 +131,15 @@ class TestArrayAlmostEqual(_GenericTest, unittest.TestCase): def setUp(self): self._assert_func = assert_array_almost_equal + def test_simple(self): + x = np.array([1234.2222]) + y = np.array([1234.2223]) + + self._assert_func(x, y, decimal=3) + self._assert_func(x, y, decimal=4) + self.failUnlessRaises(AssertionError, + lambda: self._assert_func(x, y, decimal=5)) + def test_nan(self): anan = np.array([np.nan]) aone = np.array([1]) @@ -163,6 +172,53 @@ class TestAlmostEqual(_GenericTest, unittest.TestCase): def test_simple_item(self): self._test_not_equal(1, 2) +class TestApproxEqual(unittest.TestCase): + def setUp(self): + self._assert_func = assert_approx_equal + + def test_simple_arrays(self): + x = np.array([1234.22]) + y = np.array([1234.23]) + + self._assert_func(x, y, significant=5) + self._assert_func(x, y, significant=6) + self.failUnlessRaises(AssertionError, + lambda: self._assert_func(x, y, significant=7)) + + def test_simple_items(self): + x = 1234.22 + y = 1234.23 + + self._assert_func(x, y, significant=4) + self._assert_func(x, y, significant=5) + self._assert_func(x, y, significant=6) + self.failUnlessRaises(AssertionError, + lambda: self._assert_func(x, y, significant=7)) + + def test_nan_array(self): + anan = np.array(np.nan) + aone = np.array(1) + ainf = np.array(np.inf) + self._assert_func(anan, anan) + self.failUnlessRaises(AssertionError, + lambda : self._assert_func(anan, aone)) + self.failUnlessRaises(AssertionError, + lambda : self._assert_func(anan, ainf)) + self.failUnlessRaises(AssertionError, + lambda : self._assert_func(ainf, anan)) + + def test_nan_items(self): + anan = np.array(np.nan) + aone = np.array(1) + ainf = np.array(np.inf) + self._assert_func(anan, anan) + self.failUnlessRaises(AssertionError, + lambda : self._assert_func(anan, aone)) + self.failUnlessRaises(AssertionError, + lambda : self._assert_func(anan, ainf)) + self.failUnlessRaises(AssertionError, + lambda : self._assert_func(ainf, anan)) + class TestRaises(unittest.TestCase): def setUp(self): class MyException(Exception): |