aboutsummaryrefslogtreecommitdiff
path: root/scripts/test_windows_input.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/test_windows_input.py')
-rw-r--r--scripts/test_windows_input.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/scripts/test_windows_input.py b/scripts/test_windows_input.py
index f8a70eee..38868843 100644
--- a/scripts/test_windows_input.py
+++ b/scripts/test_windows_input.py
@@ -89,6 +89,18 @@ class WindowsInputGauntletTests(unittest.TestCase):
(b"\x1b[200~\xff\x1b[201~", "fail")]:
self.assertEqual(verdict(case, "kitty", {**self.evidence, "hex": data.hex()})[0], expected)
+ def test_remote_clipboard_image_requires_empty_host_paste_and_staged_png_path(self):
+ case = self.cases["clipboard-image"]
+ empty_paste = b"\x1b[200~\x1b[201~"
+ staged = b"\x1b[200~C:\\Temp\\herdr-clipboard-images-user\\image.png\x1b[201~"
+ self.assertEqual(verdict(case, "legacy", {**self.evidence, "path": "direct", "hex": empty_paste.hex()})[0], "pass")
+ remote = {**self.evidence, "path": "herdr-remote", "hex": staged.hex(),
+ "staged_image_sha256": case["expected"]["legacy"]["sha256"]}
+ self.assertEqual(verdict(case, "legacy", remote)[0], "pass")
+ self.assertEqual(verdict(case, "legacy", {**remote, "staged_image_sha256": "0" * 64})[0], "fail")
+ self.assertEqual(verdict(case, "legacy", {**self.evidence, "path": "herdr-remote", "hex": empty_paste.hex()})[0], "fail")
+ self.assertEqual(verdict(case, "legacy", {**self.evidence, "path": "herdr", "hex": empty_paste.hex()})[0], "not_run")
+
def test_mouse_interleave_requires_ordered_motion_and_paste(self):
case = self.cases["mouse-interleave"]
motion = b"\x1b[<35;10;5M"