summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan van der Walt <stefan@sun.ac.za>2008-08-13 22:24:50 +0000
committerStefan van der Walt <stefan@sun.ac.za>2008-08-13 22:24:50 +0000
commit68072bf7d9c57895ebe51cfca2aaac52506faec2 (patch)
tree4dce9877cfbd07037117b852a09a6c8043a0f52b
parentfcce62d0292f7e2f35371fe8506237b302590695 (diff)
downloadnumpy-1.2.0b2.tar.gz
Remove C99 test cases (merged from trunk).v1.2.0b2
-rw-r--r--numpy/core/tests/test_umath.py138
1 files changed, 0 insertions, 138 deletions
diff --git a/numpy/core/tests/test_umath.py b/numpy/core/tests/test_umath.py
index 0f5a3365c..71a79c9c9 100644
--- a/numpy/core/tests/test_umath.py
+++ b/numpy/core/tests/test_umath.py
@@ -267,144 +267,6 @@ class TestComplexFunctions(object):
assert abs(a - b) < atol, "%s %s: %s; cmath: %s"%(fname,p,a,b)
-class TestC99(object):
- """Check special functions at special points against the C99 standard"""
- # NB: inherits from object instead of TestCase since using test generators
-
- #
- # Non-conforming results are with XXX added to the exception field.
- #
-
- def test_clog(self):
- for p, v, e in [
- ((-0., 0.), (-inf, pi), 'divide'),
- ((+0., 0.), (-inf, 0.), 'XXX divide'), # fails on OSX?
- ((1., inf), (inf, pi/2), ''),
- ((1., nan), (nan, nan), 'invalid-optional'),
- ((-inf, 1.), (inf, pi), ''),
- ((inf, 1.), (inf, 0.), ''),
- ((-inf, inf), (inf, 3*pi/4), ''),
- ((inf, inf), (inf, pi/4), ''),
- ((inf, nan), (inf, nan), ''),
- ((-inf, nan), (inf, nan), ''),
- ((nan, 1.), (nan, nan), 'invalid-optional'),
- ((nan, inf), (inf, nan), ''),
- ((+nan, nan), (nan, nan), 'XXX'), # raises 'invalid' on some platfs
- ]:
- yield self._check, np.log, p, v, e
-
- def test_csqrt(self):
- for p, v, e in [
- ((-0., 0.), (0.,0.), 'XXX'), # now (-0., 0.)
- ((0., 0.), (0.,0.), ''),
- ((1., inf), (inf,inf), 'XXX invalid'), # now (inf, nan)
- ((nan, inf), (inf,inf), 'XXX'), # now (nan, nan)
- ((-inf, 1.), (0.,inf), 'XXX'), # (-0., inf) on Mac OSX
- ((inf, 1.), (inf,0.), ''),
- ((-inf,nan), (nan, -inf), 'XXX'), # could also be +inf. raises 'invalid' on Sparc64
- ((inf, nan), (inf, nan), ''),
- ((nan, 1.), (nan, nan), 'invalid-optional'),
- ((nan, nan), (nan, nan), 'XXX'), # raises 'invalid' on Sparc64
- ]:
- yield self._check, np.sqrt, p, v, e
-
- def test_cacos(self):
- for p, v, e in [
- ((0., 0.), (pi/2, -0.), 'XXX'), # now (-0., 0.)
- ((-0., 0.), (pi/2, -0.), ''),
- ((0., nan), (pi/2, nan), 'XXX'), # now (nan, nan)
- ((-0., nan), (pi/2, nan), 'XXX'), # now (nan, nan)
- ((1., inf), (pi/2, -inf), 'XXX'), # now (nan, -inf)
- ((1., nan), (nan, nan), 'invalid-optional'),
- ((-inf, 1.), (pi, -inf), 'XXX'), # now (nan, -inf)
- ((inf, 1.), (0., -inf), 'XXX'), # now (nan, -inf)
- ((-inf, inf), (3*pi/4, -inf), 'XXX'), # now (nan, nan)
- ((inf, inf), (pi/4, -inf), 'XXX'), # now (nan, nan)
- ((inf, nan), (nan, +-inf), 'XXX'), # now (nan, nan)
- ((-inf, nan), (nan, +-inf), 'XXX'), # now: (nan, nan)
- ((nan, 1.), (nan, nan), 'invalid-optional'),
- ((nan, inf), (nan, -inf), 'XXX'), # now: (nan, nan)
- ((nan, nan), (nan, nan), 'XXX'), # raises 'invalid' on Sparc64
- ]:
- yield self._check, np.arccos, p, v, e
-
- def test_cacosh(self):
- for p, v, e in [
- ((0., 0), (0, pi/2), ''),
- ((-0., 0), (0, pi/2), ''),
- ((1., inf), (inf, pi/2), 'XXX'), # now: (nan, nan)
- ((1., nan), (nan, nan), 'invalid-optional'),
- ((-inf, 1.), (inf, pi), 'XXX'), # now: (inf, nan)
- ((inf, 1.), (inf, 0.), 'XXX'), # now: (inf, nan)
- ((-inf, inf), (inf, 3*pi/4), 'XXX'), # now: (nan, nan)
- ((inf, inf), (inf, pi/4), 'XXX'), # now: (nan, nan)
- ((inf, nan), (inf, nan), 'XXX'), # now: (nan, nan)
- ((-inf, nan), (inf, nan), 'XXX'), # now: (nan, nan)
- ((nan, 1.), (nan, nan), 'invalid-optional'),
- ((nan, inf), (inf, nan), 'XXX'), # now: (nan, nan)
- ((nan, nan), (nan, nan), 'XXX') # raises 'invalid' on Sparc64
- ]:
- yield self._check, np.arccosh, p, v, e
-
- def test_casinh(self):
- for p, v, e in [
- ((0., 0), (0, 0), ''),
- ((1., inf), (inf, pi/2), 'XXX'), # now: (inf, nan)
- ((1., nan), (nan, nan), 'invalid-optional'),
- ((inf, 1.), (inf, 0.), 'XXX'), # now: (inf, nan)
- ((inf, inf), (inf, pi/4), 'XXX'), # now: (nan, nan)
- ((inf, nan), (nan, nan), 'XXX'), # now: (nan, nan)
- ((nan, 0.), (nan, 0.), 'XXX'), # now: (nan, nan)
- ((nan, 1.), (nan, nan), 'invalid-optional'),
- ((nan, inf), (+-inf, nan), 'XXX'), # now: (nan, nan)
- ((nan, nan), (nan, nan), 'XXX'), # raises 'invalid' on Sparc64
- ]:
- yield self._check, np.arcsinh, p, v, e
-
- def test_catanh(self):
- for p, v, e in [
- ((0., 0), (0, 0), ''),
- ((0., nan), (0., nan), 'XXX'), # now: (nan, nan)
- ((1., 0.), (inf, 0.), 'XXX divide'), # now: (nan, nan)
- ((1., inf), (inf, 0.), 'XXX'), # now: (nan, nan)
- ((1., nan), (nan, nan), 'invalid-optional'),
- ((inf, 1.), (0., pi/2), 'XXX'), # now: (nan, nan)
- ((inf, inf), (0, pi/2), 'XXX'), # now: (nan, nan)
- ((inf, nan), (0, nan), 'XXX'), # now: (nan, nan)
- ((nan, 1.), (nan, nan), 'invalid-optional'),
- ((nan, inf), (+0, pi/2), 'XXX'), # now: (nan, nan)
- ((nan, nan), (nan, nan), 'XXX'), # raises 'invalid' on some platfs
- ]:
- yield self._check, np.arctanh, p, v, e
-
- def _check(self, func, point, value, exc=''):
- if 'XXX' in exc:
- raise nose.SkipTest
- if isinstance(point, tuple): point = complex(*point)
- if isinstance(value, tuple): value = complex(*value)
- v = dict(divide='ignore', invalid='ignore',
- over='ignore', under='ignore')
- old_err = np.seterr(**v)
- try:
- # check sign of zero, nan, etc.
- got = complex(func(point))
- got = "(%s, %s)" % (repr(got.real), repr(got.imag))
- expected = "(%s, %s)" % (repr(value.real), repr(value.imag))
- assert got == expected, (got, expected)
-
- # check exceptions
- if exc in ('divide', 'invalid', 'over', 'under'):
- v[exc] = 'raise'
- np.seterr(**v)
- assert_raises(FloatingPointError, func, point)
- else:
- for k in v.keys(): v[k] = 'raise'
- if exc == 'invalid-optional': v['invalid'] = 'ignore'
- np.seterr(**v)
- func(point)
- finally:
- np.seterr(**old_err)
-
class TestAttributes(TestCase):
def test_attributes(self):
add = ncu.add