def test_boundless_masked(): a = boundless_array(arr, window=((-4, -1), (-4, -1)), nodata=0, masked=True) assert a.mask.all() b = boundless_array(arr, window=((0, 3), (0, 3)), nodata=0, masked=True) assert not b.mask.any() c = boundless_array(arr, window=((-1, 2), (-1, 2)), nodata=0, masked=True) assert c.mask.any() and not c.mask.all()
def test_boundless(): # Exact assert boundless_array(arr, window=((0, 3), (0, 3)), nodata=0).sum() == 9 # Intersects assert boundless_array(arr, window=((-1, 2), (-1, 2)), nodata=0).sum() == 4 assert boundless_array(arr, window=((1, 4), (-1, 2)), nodata=0).sum() == 4 assert boundless_array(arr, window=((1, 4), (1, 4)), nodata=0).sum() == 4 assert boundless_array(arr, window=((-1, 2), (1, 4)), nodata=0).sum() == 4 # No overlap assert boundless_array(arr, window=((-4, -1), (-4, -1)), nodata=0).sum() == 0 assert boundless_array(arr, window=((-4, -1), (4, 7)), nodata=0).sum() == 0 assert boundless_array(arr, window=((4, 7), (4, 7)), nodata=0).sum() == 0 assert boundless_array(arr, window=((4, 7), (-4, -1)), nodata=0).sum() == 0 assert boundless_array(arr, window=((-3, 0), (-3, 0)), nodata=0).sum() == 0 # Covers assert boundless_array(arr, window=((-1, 4), (-1, 4)), nodata=0).sum() == 9 # 3D assert boundless_array(arr3d, window=((0, 3), (0, 3)), nodata=0).sum() == 9 assert boundless_array(arr3d, window=((-1, 2), (-1, 2)), nodata=0).sum() == 4 assert boundless_array(arr3d, window=((-3, 0), (-3, 0)), nodata=0).sum() == 0 # 1D with pytest.raises(ValueError): boundless_array(np.array([1, 1, 1]), window=((0, 3), ), nodata=0)
def test_boundless(): # Exact assert boundless_array(arr, window=((0, 3), (0, 3)), nodata=0).sum() == 9 # Intersects assert boundless_array(arr, window=((-1, 2), (-1, 2)), nodata=0).sum() == 4 assert boundless_array(arr, window=((1, 4), (-1, 2)), nodata=0).sum() == 4 assert boundless_array(arr, window=((1, 4), (1, 4)), nodata=0).sum() == 4 assert boundless_array(arr, window=((-1, 2), (1, 4)), nodata=0).sum() == 4 # No overlap assert boundless_array(arr, window=((-4, -1), (-4, -1)), nodata=0).sum() == 0 assert boundless_array(arr, window=((-4, -1), (4, 7)), nodata=0).sum() == 0 assert boundless_array(arr, window=((4, 7), (4, 7)), nodata=0).sum() == 0 assert boundless_array(arr, window=((4, 7), (-4, -1)), nodata=0).sum() == 0 assert boundless_array(arr, window=((-3, 0), (-3, 0)), nodata=0).sum() == 0 # Covers assert boundless_array(arr, window=((-1, 4), (-1, 4)), nodata=0).sum() == 9 # 3D assert boundless_array(arr3d, window=((0, 3), (0, 3)), nodata=0).sum() == 9 assert boundless_array(arr3d, window=((-1, 2), (-1, 2)), nodata=0).sum() == 4 assert boundless_array(arr3d, window=((-3, 0), (-3, 0)), nodata=0).sum() == 0 # 1D with pytest.raises(ValueError): boundless_array(np.array([1, 1, 1]), window=((0, 3),), nodata=0)