# {py:mod}`simvx.graphics.testing` ```{py:module} simvx.graphics.testing ``` ```{autodoc2-docstring} simvx.graphics.testing :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ScreenshotReport ` - ```{autodoc2-docstring} simvx.graphics.testing.ScreenshotReport :summary: ``` * - {py:obj}`VisualRegression ` - ```{autodoc2-docstring} simvx.graphics.testing.VisualRegression :summary: ``` ```` ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`assert_pixel ` - ```{autodoc2-docstring} simvx.graphics.testing.assert_pixel :summary: ``` * - {py:obj}`colour_ratio ` - ```{autodoc2-docstring} simvx.graphics.testing.colour_ratio :summary: ``` * - {py:obj}`assert_colour_ratio ` - ```{autodoc2-docstring} simvx.graphics.testing.assert_colour_ratio :summary: ``` * - {py:obj}`assert_region_colour ` - ```{autodoc2-docstring} simvx.graphics.testing.assert_region_colour :summary: ``` * - {py:obj}`assert_no_colour ` - ```{autodoc2-docstring} simvx.graphics.testing.assert_no_colour :summary: ``` * - {py:obj}`assert_not_blank ` - ```{autodoc2-docstring} simvx.graphics.testing.assert_not_blank :summary: ``` * - {py:obj}`save_image ` - ```{autodoc2-docstring} simvx.graphics.testing.save_image :summary: ``` * - {py:obj}`save_diff_image ` - ```{autodoc2-docstring} simvx.graphics.testing.save_diff_image :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`log ` - ```{autodoc2-docstring} simvx.graphics.testing.log :summary: ``` * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.graphics.testing.__all__ :summary: ``` ```` ### API ````{py:data} log :canonical: simvx.graphics.testing.log :value: > 'getLogger(...)' ```{autodoc2-docstring} simvx.graphics.testing.log ``` ```` ````{py:data} __all__ :canonical: simvx.graphics.testing.__all__ :value: > ['assert_pixel', 'assert_colour_ratio', 'assert_region_colour', 'assert_no_colour', 'assert_not_blan... ```{autodoc2-docstring} simvx.graphics.testing.__all__ ``` ```` ````{py:function} assert_pixel(pixels: numpy.ndarray, x: int, y: int, expected_rgba: tuple[int, ...], tolerance: int = 2) -> None :canonical: simvx.graphics.testing.assert_pixel ```{autodoc2-docstring} simvx.graphics.testing.assert_pixel ``` ```` ````{py:function} colour_ratio(pixels: numpy.ndarray, colour: tuple[int, ...], tolerance: int = 10) -> float :canonical: simvx.graphics.testing.colour_ratio ```{autodoc2-docstring} simvx.graphics.testing.colour_ratio ``` ```` ````{py:function} assert_colour_ratio(pixels: numpy.ndarray, colour: tuple[int, ...], expected_ratio: float, tolerance: float = 0.02, colour_tolerance: int = 10) -> None :canonical: simvx.graphics.testing.assert_colour_ratio ```{autodoc2-docstring} simvx.graphics.testing.assert_colour_ratio ``` ```` ````{py:function} assert_region_colour(pixels: numpy.ndarray, rect: tuple[int, int, int, int], expected_colour: tuple[int, ...], tolerance: int = 5) -> None :canonical: simvx.graphics.testing.assert_region_colour ```{autodoc2-docstring} simvx.graphics.testing.assert_region_colour ``` ```` ````{py:function} assert_no_colour(pixels: numpy.ndarray, colour: tuple[int, ...], tolerance: int = 5) -> None :canonical: simvx.graphics.testing.assert_no_colour ```{autodoc2-docstring} simvx.graphics.testing.assert_no_colour ``` ```` ````{py:function} assert_not_blank(pixels: numpy.ndarray) -> None :canonical: simvx.graphics.testing.assert_not_blank ```{autodoc2-docstring} simvx.graphics.testing.assert_not_blank ``` ```` ````{py:function} save_image(path: str | pathlib.Path, pixels: numpy.ndarray) -> None :canonical: simvx.graphics.testing.save_image ```{autodoc2-docstring} simvx.graphics.testing.save_image ``` ```` ````{py:function} save_diff_image(path: str | pathlib.Path, actual: numpy.ndarray, expected: numpy.ndarray) -> None :canonical: simvx.graphics.testing.save_diff_image ```{autodoc2-docstring} simvx.graphics.testing.save_diff_image ``` ```` `````{py:class} ScreenshotReport(output_dir: pathlib.Path) :canonical: simvx.graphics.testing.ScreenshotReport ```{autodoc2-docstring} simvx.graphics.testing.ScreenshotReport ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.graphics.testing.ScreenshotReport.__init__ ``` ````{py:method} capture(pixels: numpy.ndarray, label: str) -> pathlib.Path :canonical: simvx.graphics.testing.ScreenshotReport.capture ```{autodoc2-docstring} simvx.graphics.testing.ScreenshotReport.capture ``` ```` ````{py:method} capture_with_diff(actual: numpy.ndarray, expected: numpy.ndarray, label: str) -> pathlib.Path :canonical: simvx.graphics.testing.ScreenshotReport.capture_with_diff ```{autodoc2-docstring} simvx.graphics.testing.ScreenshotReport.capture_with_diff ``` ```` ````{py:method} add_description(text: str) -> None :canonical: simvx.graphics.testing.ScreenshotReport.add_description ```{autodoc2-docstring} simvx.graphics.testing.ScreenshotReport.add_description ``` ```` ````{py:method} finalize(test_name: str = '', status: str = 'passed') -> pathlib.Path :canonical: simvx.graphics.testing.ScreenshotReport.finalize ```{autodoc2-docstring} simvx.graphics.testing.ScreenshotReport.finalize ``` ```` ````` `````{py:class} VisualRegression(baseline_dir: pathlib.Path) :canonical: simvx.graphics.testing.VisualRegression ```{autodoc2-docstring} simvx.graphics.testing.VisualRegression ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.graphics.testing.VisualRegression.__init__ ``` ````{py:method} assert_matches(pixels: numpy.ndarray, name: str, threshold: float = 0.001) -> None :canonical: simvx.graphics.testing.VisualRegression.assert_matches ```{autodoc2-docstring} simvx.graphics.testing.VisualRegression.assert_matches ``` ```` ````{py:method} update_baseline(pixels: numpy.ndarray, name: str) -> None :canonical: simvx.graphics.testing.VisualRegression.update_baseline ```{autodoc2-docstring} simvx.graphics.testing.VisualRegression.update_baseline ``` ```` ````{py:method} pixel_diff_ratio(a: numpy.ndarray, b: numpy.ndarray, tolerance: int = 2) -> float :canonical: simvx.graphics.testing.VisualRegression.pixel_diff_ratio :staticmethod: ```{autodoc2-docstring} simvx.graphics.testing.VisualRegression.pixel_diff_ratio ``` ```` `````