def test_structured_arrays(self): def check(arr, dtype, ndim, layout, aligned): ty = typeof(arr) self.assertIsInstance(ty, types.Array) self.assertEqual(ty.dtype, dtype) self.assertEqual(ty.ndim, ndim) self.assertEqual(ty.layout, layout) self.assertEqual(ty.aligned, aligned) dtype = np.dtype([('m', np.int32), ('n', 'S5')]) rec_ty = numpy_support.from_struct_dtype(dtype) arr = np.empty(4, dtype=dtype) check(arr, rec_ty, 1, "C", False) arr = np.recarray(4, dtype=dtype) check(arr, rec_ty, 1, "C", False) dtype = np.dtype([('m', np.int32), ('n', 'S5')], align=True) rec_ty = numpy_support.from_struct_dtype(dtype) # On Numpy 1.6, align=True doesn't align the itemsize actual_aligned = numpy_support.version >= (1, 7) arr = np.empty(4, dtype=dtype) check(arr, rec_ty, 1, "C", actual_aligned) arr = np.recarray(4, dtype=dtype) check(arr, rec_ty, 1, "C", actual_aligned)
def test_dtype(self): dtype = np.dtype('int64') self.assertEqual(typeof(dtype), types.DType(types.int64)) dtype = np.dtype([('m', np.int32), ('n', 'S5')]) rec_ty = numpy_support.from_struct_dtype(dtype) self.assertEqual(typeof(dtype), types.DType(rec_ty))
def test_dtype(self): dtype = np.dtype("int64") self.assertEqual(typeof(dtype), types.DType(types.int64)) dtype = np.dtype([("m", np.int32), ("n", "S5")]) rec_ty = numpy_support.from_struct_dtype(dtype) self.assertEqual(typeof(dtype), types.DType(rec_ty))
def test_structured_arrays(self): def check(arr, dtype, ndim, layout): ty = typeof(arr) self.assertIsInstance(ty, types.Array) self.assertEqual(ty.dtype, dtype) self.assertEqual(ty.ndim, ndim) self.assertEqual(ty.layout, layout) dtype = np.dtype([("m", np.int32), ("n", "S5")]) rec_ty = numpy_support.from_struct_dtype(dtype) arr = np.empty(4, dtype=dtype) check(arr, rec_ty, 1, "C") arr = np.recarray(4, dtype=dtype) check(arr, rec_ty, 1, "C")
def test_structured_arrays(self): def check(arr, dtype, ndim, layout): ty = typeof(arr) self.assertIsInstance(ty, types.Array) self.assertEqual(ty.dtype, dtype) self.assertEqual(ty.ndim, ndim) self.assertEqual(ty.layout, layout) dtype = np.dtype([('m', np.int32), ('n', 'S5')]) rec_ty = numpy_support.from_struct_dtype(dtype) arr = np.empty(4, dtype=dtype) check(arr, rec_ty, 1, "C") arr = np.recarray(4, dtype=dtype) check(arr, rec_ty, 1, "C")