X-Git-Url: https://mudpy.org/gitweb?a=blobdiff_plain;f=mudpy%2Ftests%2Fselftest.py;h=e120e70c7a0c1d9d3ecb91418c4c5a9b08ea4e78;hb=7d59395c2db5f0220fccbc926ad56c783e50fa60;hp=766f01d044cdc6760b540dc6a6fd58b2dd7e153a;hpb=0c50d321bc2ecb103c9e80896f6d79e77f1a72b2;p=mudpy.git diff --git a/mudpy/tests/selftest.py b/mudpy/tests/selftest.py index 766f01d..e120e70 100644 --- a/mudpy/tests/selftest.py +++ b/mudpy/tests/selftest.py @@ -96,6 +96,11 @@ test_chat_mode = ( (0, r'says, "Now less chatty\."', ""), ) +test_wrapping = ( + (0, '> ', "say " + 100 * "o"), + (1, r'says,\r\n"O[o]+\."', ""), +) + test_movement = ( (0, "> ", "move north"), (0, r"You exit to the north\.", ""), @@ -146,9 +151,16 @@ test_admin_setup = ( test_telnet_iac = ( # Send a double (escaped) IAC byte within other text, which should get # unescaped and deduplicated to a single \xff in the buffer and then - # the line of input discarded as a non-UTF-8 sequence + # the line of input discarded as a non-ASCII sequence (2, "> ", b"say argle\xff\xffbargle\r\n"), - (2, r"Non-UTF-8 sequence from admin: b'say argle\\xffbargle'.*> ", ""), + (2, r"Non-ASCII characters from admin: b'say argle\\xffbargle'.*> ", ""), +) + +test_telnet_unknown = ( + # Send an unsupported negotiation command #127 which should get filtered + # from the line of input + (2, "> ", b"say glop\xff\x7fglyf\r\n"), + (2, r'Unknown Telnet IAC command 127 ignored\..*"Glopglyf\.".*> ', ""), ) test_admin_restriction = ( @@ -179,6 +191,11 @@ test_set_refused = ( (2, r'The "mudpy\.limit" element is kept in read-only file', ""), ) +test_show_version = ( + (2, "> ", "show version"), + (2, r"Running mudpy .* on .* Python 3.*with.*pyyaml.*> ", ""), +) + test_show_files = ( (2, "> ", "show files"), (2, r'These are the current files containing the universe:.*' @@ -245,16 +262,19 @@ dialogue = ( (test_typo_replacement, "typo replacement"), (test_sentence_capitalization, "sentence capitalization"), (test_chat_mode, "chat mode"), + (test_wrapping, "wrapping"), (test_movement, "movement"), (test_actor_disappears, "actor spontaneous disappearance"), (test_account1_teardown, "second account teardown"), (test_admin_setup, "admin account setup"), (test_telnet_iac, "escape stray telnet iac bytes"), + (test_telnet_unknown, "strip unknown telnet command"), (test_admin_restriction, "restricted admin commands"), (test_admin_help, "admin help"), (test_reload, "reload"), (test_set_facet, "set facet"), (test_set_refused, "refuse altering read-only element"), + (test_show_version, "show version and diagnostic info"), (test_show_files, "show a list of loaded files"), (test_show_file, "show nodes from a specific file"), (test_show_groups, "show groups"),