From 1ed15a3a1610947c4ce4f17e6e47b3a0f6adb1ea Mon Sep 17 00:00:00 2001 From: Lynx Abraxas Date: Sat, 17 Nov 2018 09:35:52 +0100 Subject: [PATCH 1/2] test: fail if vanish-pattern does not appear --- tests/load-game.sikuli/load-game.py | 12 +++++++----- tests/new-game.sikuli/new-game.py | 12 +++++++----- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/tests/load-game.sikuli/load-game.py b/tests/load-game.sikuli/load-game.py index d684350..1e6de45 100644 --- a/tests/load-game.sikuli/load-game.py +++ b/tests/load-game.sikuli/load-game.py @@ -16,11 +16,13 @@ def main(): click("ctp2Julius-Roma-file.png") click(Pattern("ctp2OK-btn.png").similar(0.99)) if exists("ctp2ctr-bar.png", 100): - waitVanish("ctp2progress-bar.png", 100) # control bar appears before progressbar vanishes - file = capture(SCREEN.getBounds()) - print("Saved screen as "+file) - shutil.move(file, 'ctp2load-game.png') - exit(0) + if waitVanish("ctp2progress-bar.png", 100): # control bar appears before progressbar vanishes + file = capture(SCREEN.getBounds()) + print("Saved screen as "+file) + shutil.move(file, 'ctp2load-game.png') + exit(0) + else: + exit(20) else: exit(10) diff --git a/tests/new-game.sikuli/new-game.py b/tests/new-game.sikuli/new-game.py index cba49d9..0ebcd09 100644 --- a/tests/new-game.sikuli/new-game.py +++ b/tests/new-game.sikuli/new-game.py @@ -14,11 +14,13 @@ def main(): click("ctp2new-game-btn.png") click("ctp2launch-btn.png") if exists("ctp2ctr-bar.png", 100): - waitVanish("ctp2progress-bar.png", 100) # control bar appears before progressbar vanishes - file = capture(SCREEN.getBounds()) - print("Saved screen as "+file) - shutil.move(file, 'ctp2new-game.png') - exit(0) + if waitVanish("ctp2progress-bar.png", 100): # control bar appears before progressbar vanishes + file = capture(SCREEN.getBounds()) + print("Saved screen as "+file) + shutil.move(file, 'ctp2new-game.png') + exit(0) + else: + exit(20) else: exit(10) From 3eea2f48d10b945626fbb48a1df2a0d83414ee40 Mon Sep 17 00:00:00 2001 From: Lynx Abraxas Date: Sat, 17 Nov 2018 10:18:40 +0100 Subject: [PATCH 2/2] test: fail if screen shot does not contain pattern: in case program exited between waitVanish and capture needs Finder, cannot use Pattern(file).find("ctp2ctr-bar.png") as for screen: http://doc.sikuli.org/region.html#exception-findfailed --- tests/load-game.sikuli/load-game.py | 12 +++++++++--- tests/new-game.sikuli/new-game.py | 12 +++++++++--- tests/start-game.sikuli/start-game.py | 12 +++++++++--- 3 files changed, 27 insertions(+), 9 deletions(-) diff --git a/tests/load-game.sikuli/load-game.py b/tests/load-game.sikuli/load-game.py index 1e6de45..1750955 100644 --- a/tests/load-game.sikuli/load-game.py +++ b/tests/load-game.sikuli/load-game.py @@ -18,13 +18,19 @@ def main(): if exists("ctp2ctr-bar.png", 100): if waitVanish("ctp2progress-bar.png", 100): # control bar appears before progressbar vanishes file = capture(SCREEN.getBounds()) - print("Saved screen as "+file) - shutil.move(file, 'ctp2load-game.png') - exit(0) + if file: + f= Finder(file) # http://doc.sikuli.org/finder.html + f.find("ctp2ctr-bar.png") + if not f.hasNext(): + print("Pattern not found in screen shot: " + file) + exit(30) + shutil.move(file, 'ctp2load-game.png') + exit(0) else: exit(20) else: exit(10) + exit(99) if __name__ == "__main__": main() diff --git a/tests/new-game.sikuli/new-game.py b/tests/new-game.sikuli/new-game.py index 0ebcd09..f04d862 100644 --- a/tests/new-game.sikuli/new-game.py +++ b/tests/new-game.sikuli/new-game.py @@ -16,13 +16,19 @@ def main(): if exists("ctp2ctr-bar.png", 100): if waitVanish("ctp2progress-bar.png", 100): # control bar appears before progressbar vanishes file = capture(SCREEN.getBounds()) - print("Saved screen as "+file) - shutil.move(file, 'ctp2new-game.png') - exit(0) + if file: + f= Finder(file) # http://doc.sikuli.org/finder.html + f.find("ctp2ctr-bar.png") + if not f.hasNext(): + print("Pattern not found in screen shot: " + file) + exit(30) + shutil.move(file, 'ctp2new-game.png') + exit(0) else: exit(20) else: exit(10) + exit(99) if __name__ == "__main__": main() diff --git a/tests/start-game.sikuli/start-game.py b/tests/start-game.sikuli/start-game.py index 4c209de..b5c58cb 100644 --- a/tests/start-game.sikuli/start-game.py +++ b/tests/start-game.sikuli/start-game.py @@ -12,11 +12,17 @@ def main(): if exists("ctp2start-scr.png", 100): file = capture(SCREEN.getBounds()) - print("Saved screen as "+file) - shutil.move(file, 'ctp2start.png') - exit(0) + if file: + f= Finder(file) # http://doc.sikuli.org/finder.html + f.find("ctp2start-scr.png") + if not f.hasNext(): + print("Pattern not found in screen shot: " + file) + exit(30) + shutil.move(file, 'ctp2start.png') + exit(0) else: exit(10) + exit(99) if __name__ == "__main__": main()