Author: Ronan Lamy <[email protected]>
Branch: fix-result-types
Changeset: r77515:5045a2ca045b
Date: 2015-05-24 21:25 +0100
http://bitbucket.org/pypy/pypy/changeset/5045a2ca045b/
Log: Add a test for the complicated relations between scalar integer
types (verified on upstream numpy 1.9.2)
diff --git a/pypy/module/micronumpy/test/dummy_module.py
b/pypy/module/micronumpy/test/dummy_module.py
--- a/pypy/module/micronumpy/test/dummy_module.py
+++ b/pypy/module/micronumpy/test/dummy_module.py
@@ -24,6 +24,7 @@
for t in types:
globals()[t + '_'] = dtype(t).type
del types
+globals()['uint'] = dtype('uint').type
types = ['Generic', 'Number', 'Integer', 'SignedInteger', 'UnsignedInteger',
'Inexact', 'Floating', 'ComplexFloating', 'Flexible', 'Character']
diff --git a/pypy/module/micronumpy/test/test_scalar.py
b/pypy/module/micronumpy/test/test_scalar.py
--- a/pypy/module/micronumpy/test/test_scalar.py
+++ b/pypy/module/micronumpy/test/test_scalar.py
@@ -3,6 +3,30 @@
class AppTestScalar(BaseNumpyAppTest):
spaceconfig = dict(usemodules=["micronumpy", "binascii", "struct"])
+ def test_integer_types(self):
+ import numpy as np
+ _32BIT = np.dtype('int').itemsize == 4
+ if _32BIT:
+ assert np.int32 is np.dtype('l').type
+ assert np.uint32 is np.dtype('L').type
+ assert np.intp is np.dtype('i').type
+ assert np.uintp is np.dtype('I').type
+ assert np.int64 is np.dtype('q').type
+ assert np.uint64 is np.dtype('Q').type
+ else:
+ assert np.int32 is np.dtype('i').type
+ assert np.uint32 is np.dtype('I').type
+ assert np.intp is np.dtype('l').type
+ assert np.uintp is np.dtype('L').type
+ assert np.int64 is np.dtype('l').type
+ assert np.uint64 is np.dtype('L').type
+ assert np.int_ is np.dtype('l').type
+ assert np.uint is np.dtype('L').type
+ assert np.dtype('intp') == np.dtype('int')
+ assert np.dtype('uintp') == np.dtype('uint')
+ assert np.dtype('i') is not np.dtype('l') is not np.dtype('q')
+ assert np.dtype('I') is not np.dtype('L') is not np.dtype('Q')
+
def test_init(self):
import numpy as np
import math
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit