Parametrize tests
This commit is contained in:
parent
b2a16f0dbe
commit
cc22efda7a
@ -295,6 +295,26 @@ class TestPyDecoder(CodecsTest):
|
||||
with pytest.raises(ValueError):
|
||||
MockPyDecoder.last.set_as_raw(b"\x00")
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"extents",
|
||||
(
|
||||
(-10, yoff, xoff + xsize, yoff + ysize),
|
||||
(xoff, -10, xoff + xsize, yoff + ysize),
|
||||
(xoff, yoff, -10, yoff + ysize),
|
||||
(xoff, yoff, xoff + xsize, -10),
|
||||
(xoff, yoff, xoff + xsize + 100, yoff + ysize),
|
||||
(xoff, yoff, xoff + xsize, yoff + ysize + 100),
|
||||
),
|
||||
)
|
||||
def test_extents(self, extents: tuple[int, int, int, int]) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
im = MockImageFile(buf)
|
||||
im.tile = [ImageFile._Tile("MOCK", extents, 32, None)]
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
im.load()
|
||||
|
||||
def test_extents_none(self) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
@ -308,53 +328,6 @@ class TestPyDecoder(CodecsTest):
|
||||
assert MockPyDecoder.last.state.xsize == 200
|
||||
assert MockPyDecoder.last.state.ysize == 200
|
||||
|
||||
def test_negative_offset(self) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
im = MockImageFile(buf)
|
||||
im.tile = [ImageFile._Tile("MOCK", (-10, yoff, xsize, ysize), 32, None)]
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
im.load()
|
||||
|
||||
im.tile = [ImageFile._Tile("MOCK", (xoff, -10, xsize, ysize), 32, None)]
|
||||
with pytest.raises(ValueError):
|
||||
im.load()
|
||||
|
||||
def test_negative_size(self) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
im = MockImageFile(buf)
|
||||
im.tile = [ImageFile._Tile("MOCK", (xoff, yoff, -10, yoff + ysize), 32, None)]
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
im.load()
|
||||
|
||||
im.tile = [ImageFile._Tile("MOCK", (xoff, yoff, xoff + xsize, -10), 32, None)]
|
||||
with pytest.raises(ValueError):
|
||||
im.load()
|
||||
|
||||
def test_oversize(self) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
im = MockImageFile(buf)
|
||||
im.tile = [
|
||||
ImageFile._Tile(
|
||||
"MOCK", (xoff, yoff, xoff + xsize + 100, yoff + ysize), 32, None
|
||||
)
|
||||
]
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
im.load()
|
||||
|
||||
im.tile = [
|
||||
ImageFile._Tile(
|
||||
"MOCK", (xoff, yoff, xoff + xsize, yoff + ysize + 100), 32, None
|
||||
)
|
||||
]
|
||||
with pytest.raises(ValueError):
|
||||
im.load()
|
||||
|
||||
def test_decode(self) -> None:
|
||||
decoder = ImageFile.PyDecoder("")
|
||||
with pytest.raises(NotImplementedError):
|
||||
@ -384,6 +357,33 @@ class TestPyEncoder(CodecsTest):
|
||||
assert MockPyEncoder.last.state.xsize == xsize
|
||||
assert MockPyEncoder.last.state.ysize == ysize
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"extents",
|
||||
(
|
||||
(-10, yoff, xoff + xsize, yoff + ysize),
|
||||
(xoff, -10, xoff + xsize, yoff + ysize),
|
||||
(xoff, yoff, -10, yoff + ysize),
|
||||
(xoff, yoff, xoff + xsize, -10),
|
||||
(xoff, yoff, xoff + xsize + 100, yoff + ysize),
|
||||
(xoff, yoff, xoff + xsize, yoff + ysize + 100),
|
||||
),
|
||||
)
|
||||
def test_extents(self, extents: tuple[int, int, int, int]) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
im = MockImageFile(buf)
|
||||
|
||||
fp = BytesIO()
|
||||
MockPyEncoder.last = None
|
||||
with pytest.raises(ValueError):
|
||||
ImageFile._save(im, fp, [ImageFile._Tile("MOCK", extents, 0, "RGB")])
|
||||
last: MockPyEncoder | None = MockPyEncoder.last
|
||||
assert last
|
||||
assert last.cleanup_called
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
ImageFile._save(im, fp, [ImageFile._Tile("MOCK", extents, 0, "RGB")])
|
||||
|
||||
def test_extents_none(self) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
@ -399,90 +399,6 @@ class TestPyEncoder(CodecsTest):
|
||||
assert MockPyEncoder.last.state.xsize == 200
|
||||
assert MockPyEncoder.last.state.ysize == 200
|
||||
|
||||
def test_negative_offset(self) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
im = MockImageFile(buf)
|
||||
|
||||
fp = BytesIO()
|
||||
MockPyEncoder.last = None
|
||||
with pytest.raises(ValueError):
|
||||
ImageFile._save(
|
||||
im,
|
||||
fp,
|
||||
[
|
||||
ImageFile._Tile(
|
||||
"MOCK", (-10, yoff, xoff + xsize, yoff + ysize), 0, "RGB"
|
||||
)
|
||||
],
|
||||
)
|
||||
last: MockPyEncoder | None = MockPyEncoder.last
|
||||
assert last
|
||||
assert last.cleanup_called
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
ImageFile._save(
|
||||
im,
|
||||
fp,
|
||||
[
|
||||
ImageFile._Tile(
|
||||
"MOCK", (xoff, -10, xoff + xsize, yoff + ysize), 0, "RGB"
|
||||
)
|
||||
],
|
||||
)
|
||||
|
||||
def test_negative_size(self) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
im = MockImageFile(buf)
|
||||
|
||||
fp = BytesIO()
|
||||
MockPyEncoder.last = None
|
||||
with pytest.raises(ValueError):
|
||||
ImageFile._save(
|
||||
im,
|
||||
fp,
|
||||
[ImageFile._Tile("MOCK", (xoff, yoff, -10, yoff + ysize), 0, "RGB")],
|
||||
)
|
||||
last: MockPyEncoder | None = MockPyEncoder.last
|
||||
assert last
|
||||
assert last.cleanup_called
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
ImageFile._save(
|
||||
im,
|
||||
fp,
|
||||
[ImageFile._Tile("MOCK", (xoff, yoff, xoff + xsize, -10), 0, "RGB")],
|
||||
)
|
||||
|
||||
def test_oversize(self) -> None:
|
||||
buf = BytesIO(b"\x00" * 255)
|
||||
|
||||
im = MockImageFile(buf)
|
||||
|
||||
fp = BytesIO()
|
||||
with pytest.raises(ValueError):
|
||||
ImageFile._save(
|
||||
im,
|
||||
fp,
|
||||
[
|
||||
ImageFile._Tile(
|
||||
"MOCK", (xoff, yoff, xoff + xsize + 100, yoff + ysize), 0, "RGB"
|
||||
)
|
||||
],
|
||||
)
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
ImageFile._save(
|
||||
im,
|
||||
fp,
|
||||
[
|
||||
ImageFile._Tile(
|
||||
"MOCK", (xoff, yoff, xoff + xsize, yoff + ysize + 100), 0, "RGB"
|
||||
)
|
||||
],
|
||||
)
|
||||
|
||||
def test_encode(self) -> None:
|
||||
encoder = ImageFile.PyEncoder("")
|
||||
with pytest.raises(NotImplementedError):
|
||||
|
||||
Loading…
Reference in New Issue
Block a user