Update total war III test harness (#75)

* Update TWW3

* missed one

* please the linting gods
This commit is contained in:
nharris-lmg
2023-10-20 09:57:16 -07:00
committed by GitHub
parent b4e477e616
commit 28d582837d
4 changed files with 25 additions and 7 deletions

View File

@@ -12,7 +12,8 @@
"HIWORD", "HIWORD",
"Kikis", "Kikis",
"Jcraft", "Jcraft",
"Kombustor" "Kombustor",
"twwh"
], ],
"ignoreRegExpList": [ "ignoreRegExpList": [
"import .*" "import .*"

View File

@@ -3,6 +3,9 @@ executable: "twwh3.py"
process_name: "warhammer3.exe" process_name: "warhammer3.exe"
output_dir: "run" output_dir: "run"
options: options:
- name: benchmark
type: select
values: [battle,mom]
- name: kerasHost - name: kerasHost
type: input type: input
- name: kerasPort - name: kerasPort

View File

@@ -58,7 +58,7 @@ def skip_logo_screens() -> None:
user.press("escape") user.press("escape")
time.sleep(0.5) time.sleep(0.5)
# pylint: disable=too-many-statements
def run_benchmark(): def run_benchmark():
"""Starts the benchmark""" """Starts the benchmark"""
start_game() start_game()
@@ -105,6 +105,15 @@ def run_benchmark():
gui.mouseDown() gui.mouseDown()
time.sleep(0.2) time.sleep(0.2)
gui.mouseUp() gui.mouseUp()
if args.benchmark != "battle":
result = kerasService.look_for_word("mirrors", attempts=10, interval=1)
gui.moveTo(result["x"], result["y"])
time.sleep(0.2)
gui.mouseDown()
time.sleep(0.2)
time.sleep(2)
user.press("enter")
else:
time.sleep(2) time.sleep(2)
user.press("enter") user.press("enter")
@@ -117,9 +126,12 @@ def run_benchmark():
logging.info("Setup took %f seconds", elapsed_setup_time) logging.info("Setup took %f seconds", elapsed_setup_time)
test_start_time = time.time() test_start_time = time.time()
time.sleep(100) # Wait for benchmark if args.benchmark != "battle":
time.sleep(65) # Wait time for MOM benchmark
else:
time.sleep(100) # Wait time for battle benchmark
result = kerasService.wait_for_word("fps", interval=5, timeout=250) result = kerasService.wait_for_word("summary", interval=5, timeout=250)
if not result: if not result:
logging.info( logging.info(
"Results screen was not found! Did harness not wait long enough? Or test was too long?") "Results screen was not found! Did harness not wait long enough? Or test was too long?")
@@ -150,6 +162,8 @@ console.setFormatter(formatter)
logging.getLogger('').addHandler(console) logging.getLogger('').addHandler(console)
parser = ArgumentParser() parser = ArgumentParser()
parser.add_argument("-s", "--benchmark", dest="benchmark",
help="Benchmark Scene", metavar="benchmark", required=True)
parser.add_argument("--kerasHost", dest="keras_host", parser.add_argument("--kerasHost", dest="keras_host",
help="Host for Keras OCR service", required=True) help="Host for Keras OCR service", required=True)
parser.add_argument("--kerasPort", dest="keras_port", parser.add_argument("--kerasPort", dest="keras_port",