From: Jeremy Stanley Date: Mon, 28 Dec 2015 13:13:09 +0000 (+0000) Subject: Test admin account restrictions X-Git-Tag: 0.0.1~199 X-Git-Url: https://mudpy.org/gitweb?p=mudpy.git;a=commitdiff_plain;h=8e982a66729335824d8e2fe898ff5ec47b1587c4 Test admin account restrictions Add an admin session in the functional tests, and confirm that an admin can see a restricted function in the help output while a non-admin cannot see it. Further confirm that an admin command behaves as an unknown command when a non-admin attempts to call it. --- diff --git a/bin/test b/bin/test index 9c57829..6311dc5 100755 --- a/bin/test +++ b/bin/test @@ -124,15 +124,6 @@ test_actor_disappears = ( (0, "You suddenly wonder where .* went\.", ""), ) -test_account0_teardown = ( - (0, "> ", "quit"), - (0, "What would you like to do?", "d"), - (0, "Whom would you like to delete?", ""), - (0, "What would you like to do?", "p"), - (0, "permanently delete your account?", "y"), - (0, "Disconnecting...", ""), -) - test_account1_teardown = ( (1, "What would you like to do?", "d"), (1, "Whom would you like to delete?", ""), @@ -141,6 +132,30 @@ test_account1_teardown = ( (1, "Disconnecting...", ""), ) +test_admin_setup = ( + (2, "Identify yourself:", "testadmin"), + (2, "Enter your choice:", "n"), + (2, "Enter a new password for \"testadmin\":", "Test789"), + (2, "Enter the same new password again:", "Test789"), + (2, "What would you like to do\?", "c"), + (2, "Pick a birth gender for your new avatar:", "m"), + (2, "Choose a name for him:", "1"), + (2, "What would you like to do?", "a"), + (2, "Whom would you like to awaken?", ""), +) + +test_admin_restriction = ( + (0, "> ", "help halt"), + (0, "That is not an available command\.", "halt"), + (0, '(not sure what "halt" means|Arglebargle, glop-glyf)', ""), +) + +test_admin_help = ( + (2, "> ", "help"), + (2, "halt.*Shut down the world\.", "help halt"), + (2, "This will save all active accounts", ""), +) + dialogue = ( (test_account0_setup, "first account setup"), (test_account1_setup, "second account setup"), @@ -152,12 +167,14 @@ dialogue = ( (test_chat_mode, "chat mode"), (test_movement, "movement"), (test_actor_disappears, "actor spontaneous disappearance"), - (test_account0_teardown, "first account teardown"), (test_account1_teardown, "second account teardown"), + (test_admin_setup, "admin account setup"), + (test_admin_restriction, "restricted admin commands"), + (test_admin_help, "admin help"), ) -captures = ["", ""] -lusers = [telnetlib.Telnet(), telnetlib.Telnet()] +captures = ["", "", ""] +lusers = [telnetlib.Telnet(), telnetlib.Telnet(), telnetlib.Telnet()] success = True start = time.time() for luser in lusers: