X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;ds=sidebyside;f=tests%2Fcoverage_dungeon.py;h=288b1c01a707d4f323ac35aa5647de71a3bad519;hb=a01c08385c0ce32976b94a10019576c348aa53bc;hp=c2ccabe05a96448a3ce8bb499fdad4aea01dd43b;hpb=643656fcc35838d3e8b6e819fa8b1f9c4adda88c;p=open-adventure.git diff --git a/tests/coverage_dungeon.py b/tests/coverage_dungeon.py index c2ccabe..288b1c0 100755 --- a/tests/coverage_dungeon.py +++ b/tests/coverage_dungeon.py @@ -7,9 +7,10 @@ various strings contained are present within the test check files. The default HTML output is appropriate for use with Gitlab CI. You can override it with a command-line argument. -The DANGLING list is for actions that should be considered always found -even if the checkfile search doesn't find them. Typically this will because -they emit a templated message that can't be regression-tested by equality. +The DANGLING lists are for actions and messages that should be +considered always found even if the checkfile search doesn't find them. +Typically this will because an action emit a templated message that +can't be regression-tested by equality. """ # pylint: disable=consider-using-f-string,line-too-long,invalid-name,missing-function-docstring,redefined-outer-name @@ -23,7 +24,8 @@ TEST_DIR = "." YAML_PATH = "../adventure.yaml" HTML_TEMPLATE_PATH = "../templates/coverage_dungeon.html.tpl" DEFAULT_HTML_OUTPUT_PATH = "../coverage/adventure.yaml.html" -DANGLING = ["ACT_VERSION"] +DANGLING_ACTIONS = ["ACT_VERSION"] +DANGLING_MESSAGES = ["SAVERESUME_DISABLED"] STDOUT_REPORT_CATEGORY = " {name:.<19}: {percent:5.1f}% covered ({covered} of {total})\n" @@ -156,7 +158,7 @@ def arb_coverage(arb_msgs, text, report): if name not in report["messages"]: report["messages"][name] = {"covered" : False} report["total"] += 1 - if not report["messages"][name]["covered"] and search(message, text): + if not report["messages"][name]["covered"] and search(message, text) or name in DANGLING_MESSAGES: report["messages"][name]["covered"] = True report["covered"] += 1 @@ -166,7 +168,7 @@ def actions_coverage(items, text, report): if name not in report["messages"]: report["messages"][name] = {"covered" : False} report["total"] += 1 - if not report["messages"][name]["covered"] and (search(item["message"], text) or name in DANGLING): + if not report["messages"][name]["covered"] and (search(item["message"], text) or name in DANGLING_ACTIONS): report["messages"][name]["covered"] = True report["covered"] += 1