day-piece-webview 0.4.4

An embedded native web view for Day apps: remote pages and bundled sites
Documentation
import importlib.util
from pathlib import Path
import tempfile
import unittest

spec = importlib.util.spec_from_file_location("render", Path(__file__).with_name("verify-webview-render.py"))
render = importlib.util.module_from_spec(spec)
spec.loader.exec_module(render)


class BrowserPaint(unittest.TestCase):
    def test_blank_screenshot_is_rejected_and_browser_marker_accepted(self):
        from PIL import Image

        with tempfile.TemporaryDirectory() as directory:
            screenshot = Path(directory) / "screen.png"
            Image.new("RGB", (100, 100), "white").save(screenshot)
            with self.assertRaisesRegex(ValueError, "Browser paint marker missing"):
                render.verify_render(screenshot)
            Image.new("RGB", (100, 100), (18, 217, 164)).save(screenshot)
            render.verify_render(screenshot)


    def test_comparison_marker_uses_its_own_color(self):
        from PIL import Image
        with tempfile.TemporaryDirectory() as directory:
            screenshot = Path(directory) / "comparison.png"
            Image.new("RGB", (100, 100), (0, 255, 0)).save(screenshot)
            render.verify_render(screenshot, (0, 255, 0))
            with self.assertRaisesRegex(ValueError, "Browser paint marker missing"):
                render.verify_render(screenshot)