MCPcopy Create free account
hub / github.com/ml-explore/mlx / test_array_basics

Method test_array_basics

python/tests/test_array.py:275–353  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

273
274class TestArray(mlx_tests.MLXTestCase):
275 def test_array_basics(self):
276 x = mx.array(1)
277 self.assertEqual(x.size, 1)
278 self.assertEqual(x.ndim, 0)
279 self.assertEqual(x.itemsize, 4)
280 self.assertEqual(x.nbytes, 4)
281 self.assertEqual(x.shape, ())
282 self.assertEqual(x.dtype, mx.int32)
283 self.assertEqual(x.item(), 1)
284 self.assertTrue(isinstance(x.item(), int))
285
286 with self.assertRaises(TypeError):
287 len(x)
288
289 x = mx.array(1, mx.uint32)
290 self.assertEqual(x.item(), 1)
291 self.assertTrue(isinstance(x.item(), int))
292
293 x = mx.array(1, mx.int64)
294 self.assertEqual(x.item(), 1)
295 self.assertTrue(isinstance(x.item(), int))
296
297 x = mx.array(1, mx.bfloat16)
298 self.assertEqual(x.item(), 1.0)
299
300 x = mx.array(1.0)
301 self.assertEqual(x.size, 1)
302 self.assertEqual(x.ndim, 0)
303 self.assertEqual(x.shape, ())
304 self.assertEqual(x.dtype, mx.float32)
305 self.assertEqual(x.item(), 1.0)
306 self.assertTrue(isinstance(x.item(), float))
307
308 x = mx.array(False)
309 self.assertEqual(x.size, 1)
310 self.assertEqual(x.ndim, 0)
311 self.assertEqual(x.shape, ())
312 self.assertEqual(x.dtype, mx.bool_)
313 self.assertEqual(x.item(), False)
314 self.assertTrue(isinstance(x.item(), bool))
315
316 x = mx.array(complex(1, 1))
317 self.assertEqual(x.ndim, 0)
318 self.assertEqual(x.shape, ())
319 self.assertEqual(x.dtype, mx.complex64)
320 self.assertEqual(x.item(), complex(1, 1))
321 self.assertTrue(isinstance(x.item(), complex))
322
323 x = mx.array([True, False, True])
324 self.assertEqual(x.dtype, mx.bool_)
325 self.assertEqual(x.ndim, 1)
326 self.assertEqual(x.shape, (3,))
327 self.assertEqual(len(x), 3)
328
329 x = mx.array([True, False, True], mx.float32)
330 self.assertEqual(x.dtype, mx.float32)
331
332 x = mx.array([0, 1, 2])

Callers

nothing calls this directly

Calls 2

itemMethod · 0.80
arrayMethod · 0.60

Tested by

no test coverage detected