def test_full_slice_with_int_2d(self): d0 = Distribution(context=self.context, shape=(15, 20)) s = (slice(None), 4) d1 = d0.slice(s) self.assertEqual(len(d0.maps) - 1, len(d1.maps)) self.assertSequenceEqual(d1.dist, d0.dist[:-1]) self.assertEqual(d1.shape, (15,))
def test_full_slice_with_int_2d(self): d0 = Distribution(context=self.context, shape=(15, 20)) s = (slice(None), 4) d1 = d0.slice(s) self.assertEqual(len(d0.maps) - 1, len(d1.maps)) self.assertSequenceEqual(d1.dist, d0.dist[:-1]) self.assertEqual(d1.shape, (15, ))
def test_from_partial_slice_2d(self): d0 = Distribution(context=self.context, shape=(15, 20)) s = (slice(3, 7), 4) d1 = d0.slice(s) self.assertEqual(len(d0.maps) - 1, len(d1.maps)) self.assertSequenceEqual(d1.dist, d0.dist[:-1]) for m, expected in zip(d1.maps, ([(0, 1), (1, 4)], [(0, 1)])): self.assertSequenceEqual(m.bounds, expected)
def test_from_full_slice_with_step_1d_0(self): d0 = Distribution(context=self.context, shape=(15,)) s = (slice(None, None, 2),) d1 = d0.slice(s) self.assertEqual(len(d0.maps), len(d1.maps)) self.assertSequenceEqual(d1.dist, d0.dist) self.assertSequenceEqual(d1.targets, d0.targets) self.assertEqual(d1.maps[0].bounds[0][0], d0.maps[0].bounds[0][0])
def test_from_partial_slice_1d(self): d0 = Distribution(context=self.context, shape=(15,)) s = (slice(0, 3),) d1 = d0.slice(s) self.assertEqual(len(d0.maps), len(d1.maps)) self.assertSequenceEqual(d1.dist, d0.dist) self.assertSequenceEqual(d1.targets, [0]) self.assertSequenceEqual(d1.shape, (3,))
def test_from_full_slice_with_step_1d_0(self): d0 = Distribution(context=self.context, shape=(15, )) s = (slice(None, None, 2), ) d1 = d0.slice(s) self.assertEqual(len(d0.maps), len(d1.maps)) self.assertSequenceEqual(d1.dist, d0.dist) self.assertSequenceEqual(d1.targets, d0.targets) self.assertEqual(d1.maps[0].bounds[0][0], d0.maps[0].bounds[0][0])
def test_from_partial_slice_1d(self): d0 = Distribution(context=self.context, shape=(15, )) s = (slice(0, 3), ) d1 = d0.slice(s) self.assertEqual(len(d0.maps), len(d1.maps)) self.assertSequenceEqual(d1.dist, d0.dist) self.assertSequenceEqual(d1.targets, [0]) self.assertSequenceEqual(d1.shape, (3, ))
def test_from_full_slice_2d(self): d0 = Distribution(context=self.context, shape=(15, 20)) s = (slice(None), slice(None)) d1 = d0.slice(s) self.assertEqual(len(d0.maps), len(d1.maps)) self.assertSequenceEqual(d1.dist, d0.dist) for m0, m1 in zip(d0.maps, d1.maps): if m0.dist == "b": self.assertSequenceEqual(m0.bounds, m1.bounds) self.assertSequenceEqual(d1.targets, d0.targets)
def test_from_full_slice_2d(self): d0 = Distribution(context=self.context, shape=(15, 20)) s = (slice(None), slice(None)) d1 = d0.slice(s) self.assertEqual(len(d0.maps), len(d1.maps)) self.assertSequenceEqual(d1.dist, d0.dist) for m0, m1 in zip(d0.maps, d1.maps): if m0.dist == 'b': self.assertSequenceEqual(m0.bounds, m1.bounds) self.assertSequenceEqual(d1.targets, d0.targets)