def test_element_iter_write_buffered(self): a = nd.array([1, 2, 3, 4, 5], access='rw').ucast(ndt.int64) dd = DyNDDataDescriptor(a) self.assertEqual(dd.dshape, datashape.dshape('5, int64')) with dd.element_write_iter() as ge: self.assertTrue(isinstance(ge, IElementWriteIter)) for val, ptr in izip([5,7,4,5,3], ge): x = ctypes.c_int64(val) ctypes.memmove(ptr, ctypes.addressof(x), 8) self.assertEqual(dd_as_py(dd), [5,7,4,5,3])
def test_element_iter_write(self): a = nd.ndobject([1, 2, 3, 4, 5]) dd = DyNDDataDescriptor(a) self.assertEqual(dd.dshape, datashape.dshape('5, int32')) with dd.element_write_iter() as ge: self.assertTrue(isinstance(ge, IElementWriteIter)) for val, ptr in izip([5,7,4,5,3], ge): x = ctypes.c_int32(val) ctypes.memmove(ptr, ctypes.addressof(x), 4) self.assertEqual(dd_as_py(dd), [5,7,4,5,3])