From ca3526c76ac1031ab5e64e1b4d7466888147386f Mon Sep 17 00:00:00 2001 From: Ilya Kolpakov Date: Tue, 4 Sep 2012 11:30:58 +0200 Subject: [PATCH] ufunc test now uses assert_array_almost_equal instead of bitwise(?) comparison --- libs/numpy/test/ufunc.py | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/libs/numpy/test/ufunc.py b/libs/numpy/test/ufunc.py index 07206ad7..0cedeabb 100755 --- a/libs/numpy/test/ufunc.py +++ b/libs/numpy/test/ufunc.py @@ -3,48 +3,49 @@ import ufunc_mod import unittest import numpy +from numpy.testing.utils import assert_array_almost_equal class TestUnary(unittest.TestCase): def testScalar(self): f = ufunc_mod.UnaryCallable() - self.assertEqual(f(1.0), 2.0) - self.assertEqual(f(3.0), 6.0) + assert_array_almost_equal(f(1.0), 2.0) + assert_array_almost_equal(f(3.0), 6.0) def testArray(self): f = ufunc_mod.UnaryCallable() a = numpy.arange(5, dtype=float) b = f(a) - self.assert_((b == a*2.0).all()) + assert_array_almost_equal(b, a*2.0) c = numpy.zeros(5, dtype=float) d = f(a,output=c) - self.assert_((c == a*2.0).all()) - self.assert_((d == a*2.0).all()) + assert_array_almost_equal(c, a*2.0) + assert_array_almost_equal(d, a*2.0) def testList(self): f = ufunc_mod.UnaryCallable() a = range(5) b = f(a) - self.assert_((b/2.0 == a).all()) + assert_array_almost_equal(b/2.0, a) class TestBinary(unittest.TestCase): def testScalar(self): f = ufunc_mod.BinaryCallable() - self.assertEqual(f(1.0, 3.0), 11.0) - self.assertEqual(f(3.0, 2.0), 12.0) + assert_array_almost_equal(f(1.0, 3.0), 11.0) + assert_array_almost_equal(f(3.0, 2.0), 12.0) def testArray(self): f = ufunc_mod.BinaryCallable() a = numpy.random.randn(5) b = numpy.random.randn(5) - self.assert_((f(a,b) == (a*2+b*3)).all()) + assert_array_almost_equal(f(a,b), (a*2+b*3)) c = numpy.zeros(5, dtype=float) d = f(a,b,output=c) - self.assert_((c == a*2 + b*3).all()) - self.assert_((d == a*2 + b*3).all()) - self.assert_((f(a, 2.0) == a*2 + 6.0).all()) - self.assert_((f(1.0, b) == 2.0 + b*3).all()) + assert_array_almost_equal(c, a*2 + b*3) + assert_array_almost_equal(d, a*2 + b*3) + assert_array_almost_equal(f(a, 2.0), a*2 + 6.0) + assert_array_almost_equal(f(1.0, b), 2.0 + b*3) if __name__=="__main__":