Diff of /tests/test_readers.py [000000] .. [fde104]

Switch to side-by-side view

--- a
+++ b/tests/test_readers.py
@@ -0,0 +1,48 @@
+from pathlib import Path
+
+import pytest
+
+import wsic
+
+
+class TestGetTileScenareos:
+    """Test scenarios specific to get_tile()."""
+
+    scenarios = [
+        (
+            "get_tile openslide",
+            {
+                "reader_class": wsic.readers.OpenSlideReader,
+                "filepath": Path("CMU-1-Small-Region.svs"),
+                "decode": False,
+            },
+        ),
+        (
+            "get_tile tiffreader",
+            {
+                "reader_class": wsic.readers.TIFFReader,
+                "filepath": Path("CMU-1-Small-Region.svs"),
+                "decode": True,
+            },
+        ),
+    ]
+
+    @staticmethod
+    def test_get_tile_decode_false(
+        samples_path,
+        filepath: str,
+        reader_class: wsic.readers.Reader,
+        decode: bool,
+        **kwargs
+    ):
+        """Test that get_tile returns bytes or raises NotImplementedError."""
+        filepath = samples_path / filepath
+        assert filepath.exists()
+        reader = reader_class(filepath)
+        if not decode:
+            with pytest.raises(NotImplementedError):
+                reader.get_tile((0, 0), decode=False)
+            return
+
+        tile = reader.get_tile((0, 0), decode=False)
+        assert isinstance(tile, bytes)