YAML coverage parser bug fixed -- handling `\n` and `\t` correctly
[open-adventure.git] / tests / coverage_dungeon.py
index 44ce626a11e3dd626c130a7a6b518dd07bb74972..50697feedb7b5fbd701f65a6e37a012e020d5046 100755 (executable)
@@ -44,6 +44,8 @@ def search(needle, haystack):
     # replacing %s, %d, etc. with regex wildcards, so the variable messages
     # within the dungeon definition will actually match
     needle = re.escape(needle) \
+             .replace("\\n", "\n") \
+             .replace("\\t", "\t") \
              .replace("\%S", ".*") \
              .replace("\%s", ".*") \
              .replace("\%d", ".*") \
@@ -122,7 +124,7 @@ def obit_coverage(obituaries, text):
 
 def actions_coverage(actions, text):
     for name, action in actions:
-        if action["message"] == None:
+        if action["message"] == None or action["message"] == "NO_MESSAGE":
             action["message"] = True
         if action["message"] != True:
             if search(action["message"], text):