Error if set command is used on read-only element
[mudpy.git] / mudpy / tests / selftest.py
index 0eb4e8b..5da058c 100644 (file)
@@ -160,11 +160,23 @@ test_reload = (
         r".* User admin reloaded the world\.", ""),
 )
 
+test_set_facet = (
+    (2, "> ", "set actor:avatar:admin:0 gender female"),
+    (2, r'You have successfully \(re\)set the "gender" facet of element', ""),
+)
+
+test_set_refused = (
+    (2, "> ", "set mudpy.limit password_tries 10"),
+    (2, r'The "mudpy\.limit" element is kept in read-only file', ""),
+)
+
 test_show_element = (
-    (2, "> ", "show element internal:counters"),
-    (2, r'These are the properties of the "internal:counters" element '
-        r'\(in.*data/internal\.yaml"\):.*   \x1b\[32melapsed: '
-        r'\x1b\[31m[0-9]+\x1b\[0m', ""),
+    (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.*'
+        r'  \x1b\[32mgender: \x1b\[31mfemale.*> ', ""),
 )
 
 test_show_log = (
@@ -206,6 +218,8 @@ dialogue = (
     (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_element, "show element"),
     (test_show_log, "show log"),
     (test_custom_loglevel, "custom loglevel"),
@@ -220,7 +234,7 @@ def main():
     success = True
     start = time.time()
     for luser in lusers:
-        luser.open("::1", 6669)
+        luser.open("::1", 4000)
     for test, description in dialogue:
         print("\nTesting %s..." % description)
         test_start = time.time()