def test_char_delete(self): # Chardelete requires user input; this test is mainly to confirm # whether permissions are being checked # Add char to account playable characters self.account.db._playable_characters.append(self.char1) # Try deleting as Developer self.call(account.CmdCharDelete(), "Char", "This will permanently destroy 'Char'. This cannot be undone. Continue yes/[no]?", caller=self.account) # Downgrade permissions on account self.account.permissions.add('Player') self.account.permissions.remove('Developer') # Set lock on character object to prevent deletion self.char1.locks.add('delete:none()') # Try deleting as Player self.call(account.CmdCharDelete(), "Char", "You do not have permission to delete this character.", caller=self.account) # Set lock on character object to allow self-delete self.char1.locks.add('delete:pid(%i)' % self.account.id) # Try deleting as Player again self.call(account.CmdCharDelete(), "Char", "This will permanently destroy 'Char'. This cannot be undone. Continue yes/[no]?", caller=self.account)
def at_cmdset_creation(self): "Populates the cmdset" # Account-specific commands self.add(account.CmdOOCLook()) self.add(account.CmdIC()) self.add(account.CmdOOC()) self.add(account.CmdCharCreate()) self.add(account.CmdCharDelete()) # self.add(account.CmdSessions()) self.add(account.CmdWho()) self.add(account.CmdOption()) self.add(account.CmdQuit()) self.add(account.CmdPassword()) self.add(account.CmdColorTest()) self.add(account.CmdQuell()) self.add(account.CmdStyle()) # nicks self.add(general.CmdNick()) # testing self.add(building.CmdExamine()) # Help command self.add(help.CmdHelp()) # system commands self.add(system.CmdReload()) self.add(system.CmdReset()) self.add(system.CmdShutdown()) self.add(system.CmdPy()) # Admin commands self.add(admin.CmdNewPassword()) # Comm commands self.add(comms.CmdAddCom()) self.add(comms.CmdDelCom()) self.add(comms.CmdAllCom()) self.add(comms.CmdChannels()) self.add(comms.CmdCdestroy()) self.add(comms.CmdChannelCreate()) self.add(comms.CmdClock()) self.add(comms.CmdCBoot()) self.add(comms.CmdCemit()) self.add(comms.CmdCWho()) self.add(comms.CmdCdesc()) self.add(comms.CmdPage()) self.add(comms.CmdIRC2Chan()) self.add(comms.CmdIRCStatus()) self.add(comms.CmdRSS2Chan()) self.add(comms.CmdGrapevine2Chan())
def at_cmdset_creation(self): """ Populates the cmdset """ super(AccountCmdSet, self).at_cmdset_creation() self.remove(default_cmds.CmdPage()) self.remove(default_cmds.CmdCharCreate()) self.remove(account.CmdCharDelete()) self.remove(default_cmds.CmdQuell()) self.remove(default_cmds.CmdIC()) self.remove(default_cmds.CmdOOC()) self.remove(default_cmds.CmdWho()) self.remove(default_cmds.CmdNick()) self.remove(default_cmds.CmdChannelCreate()) self.remove(default_cmds.CmdCBoot()) self.remove(default_cmds.CmdCdesc()) self.remove(default_cmds.CmdCdestroy()) self.remove(default_cmds.CmdCemit()) self.remove(default_cmds.CmdClock()) self.remove(default_cmds.CmdCWho()) self.remove(default_cmds.CmdAddCom()) self.remove(default_cmds.CmdAllCom()) self.remove(default_cmds.CmdDelCom()) self.remove(default_cmds.CmdChannels())
def at_cmdset_creation(self): """ Populates the cmdset """ super(AccountCmdSet, self).at_cmdset_creation() # # any commands you add below will overload the default ones. # # Account specific Commands self.remove(account.CmdOOCLook()) self.remove(account.CmdIC()) self.remove(account.CmdOOC()) self.remove(account.CmdCharCreate()) self.remove(account.CmdCharDelete()) self.remove(account.CmdOption) self.remove(account.CmdQuit()) self.remove(account.CmdPassword()) self.remove(account.CmdColorTest()) self.add(acct.CmdOption()) self.add(acct.CmdQuit()) self.add(acct.CmdPassword()) self.add(acct.CmdColorTest()) self.add(acct.CmdQuell()) # Comm commands self.remove(comms.CmdPage()) self.remove(comms.CmdChannels) self.add(comm.CmdChannels) self.add(comm.CmdCdestroy()) self.add(comm.CmdChannelCreate()) self.add(comm.CmdClock()) self.add(comm.CmdCBoot()) self.add(comm.CmdCemit()) self.add(comm.CmdCWho()) self.add(comm.CmdCdesc()) self.add(comm.CmdTell())