X-Git-Url: https://mudpy.org/gitweb?p=mudpy.git;a=blobdiff_plain;f=mudpy%2Ftests%2Fselftest.py;h=cba69c6fec5c643edfe7874904e898f942d5a7bb;hp=15d73662f51c700ba76ac475b68a71439afc19b6;hb=46a46f095b503ba27f07521e9fef62a97ff1b078;hpb=d45fa0a36ab90c8fbe96e108b9268b41ff7ece36 diff --git a/mudpy/tests/selftest.py b/mudpy/tests/selftest.py index 15d7366..cba69c6 100644 --- a/mudpy/tests/selftest.py +++ b/mudpy/tests/selftest.py @@ -162,7 +162,7 @@ test_reload = ( ) test_set_facet = ( - (2, "> ", "set actor:avatar:admin:0 gender female"), + (2, "> ", "set actor.avatar_admin_0 gender female"), (2, r'You have successfully \(re\)set the "gender" facet of element', ""), ) @@ -181,15 +181,27 @@ test_show_files = ( test_show_file = ( (2, "> ", "show file %s" % os.path.join(os.getcwd(), "data/internal.yaml")), - (2, "These are the nodes in the.*file:.*internal:counters.*> ", ""), + (2, r'These are the nodes in the.*file:.*internal\.counters.*> ', ""), +) + +test_show_groups = ( + (2, "> ", "show groups"), + (2, r'These are the element groups:.*' + r' \x1b\[32maccount\x1b\[0m.*> ', ""), +) + +test_show_group = ( + (2, "> ", "show group account"), + (2, r'These are the elements in the "account" group:.*' + r' \x1b\[32maccount\.admin\x1b\[0m.*> ', ""), ) test_show_element = ( (2, "> ", "show element mudpy.limit"), (2, r'These are the properties of the "mudpy\.limit" element.*' r' \x1b\[32mpassword_tries: \x1b\[31m3.*> ', - "show element actor:avatar:admin:0"), - (2, r'These are the properties of the "actor:avatar:admin:0" element.*' + "show element actor.avatar_admin_0"), + (2, r'These are the properties of the "actor.avatar_admin_0" element.*' r' \x1b\[32mgender: \x1b\[31mfemale.*> ', ""), ) @@ -236,6 +248,8 @@ dialogue = ( (test_set_refused, "refuse altering read-only element"), (test_show_files, "show a list of loaded files"), (test_show_file, "show nodes from a specific file"), + (test_show_groups, "show groups"), + (test_show_group, "show group"), (test_show_element, "show element"), (test_show_log, "show log"), (test_custom_loglevel, "custom loglevel"), @@ -256,13 +270,25 @@ def main(): test_start = time.time() for conversant, question, answer in test: print("luser%s waiting for: %s" % (conversant, question)) - index, match, received = lusers[conversant].expect( - [re.compile(question.encode("utf-8"), flags=re.DOTALL)], 5) - captures[conversant] += received.decode("utf-8") + try: + index, match, received = lusers[conversant].expect( + [re.compile(question.encode("utf-8"), flags=re.DOTALL)], 5) + captures[conversant] += received.decode("utf-8") + except ConnectionResetError: + print("ERROR: Unable to connect to server.") + success = False + break + except EOFError: + print("ERROR: luser%s premature disconnection expecting:\n\n" + "%s\n\n" + "Check the end of capture_%s.log for received data." + % (conversant, question, conversant)) + success = False + break try: captures[conversant] += lusers[ conversant].read_very_eager().decode("utf-8") - except: + except Exception: pass if index is not 0: print("ERROR: luser%s did not receive expected string:\n\n" @@ -283,7 +309,7 @@ def main(): try: captures[conversant] += lusers[ conversant].read_very_eager().decode("utf-8") - except: + except Exception: pass lusers[conversant].close() logfile = "capture_%s.log" % conversant