From 6dcee5331bc3fc7a324a98d27e3531d708f65761 Mon Sep 17 00:00:00 2001 From: Jim Pivarski Date: Sun, 17 Jun 2018 16:36:21 +0200 Subject: [PATCH] Windows uses 4-byte integers in Numpy arrays made from Python ints --- tests/test_jagged.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/tests/test_jagged.py b/tests/test_jagged.py index c0887893..9a93469d 100644 --- a/tests/test_jagged.py +++ b/tests/test_jagged.py @@ -143,8 +143,14 @@ def test_bytejagged_offsets(self): def test_bytejagged_iterable(self): a = ByteJaggedArray.fromiterable([[1, 2, 3], [], [4, 5]]) self.assertEqual([x.tolist() for x in a], [[1, 2, 3], [], [4, 5]]) - self.assertEqual(a.offsets.tolist(), [0, 24, 24, 40]) - self.assertEqual(a.content.tobytes(), b"\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00") + if a.dtype.itemsize == 8: + self.assertEqual(a.offsets.tolist(), [0, 24, 24, 40]) + self.assertEqual(a.content.tobytes(), b"\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00") + elif a.dtype.itemsize == 4: + self.assertEqual(a.offsets.tolist(), [0, 12, 12, 20]) + self.assertEqual(a.content.tobytes(), b"\x01\x00\x00\x00\x02\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00") + else: + raise AssertionError(a.dtype.itemsize) def test_bytejagged_get(self): a = ByteJaggedArray([5, 17, 19], [17, 17, 27], b"\xff\x00\x00\x00\x00\x01\x00\x00\x00\x02\x00\x00\x00\x03\x00\x00\x00\xff\xff\x04\x00\x00\x00\x05\x00\x00\x00\xff", numpy.int32)