commit
ea79cc76c3
9
bot.py
9
bot.py
@ -170,7 +170,7 @@ def message_response(bot, ircmsg, actor, ircsock, channel, greeters):
|
|||||||
|
|
||||||
# If someone tries to change the wait time...
|
# If someone tries to change the wait time...
|
||||||
if ircmsg.find(bot.botnick + " --wait-time ") != -1:
|
if ircmsg.find(bot.botnick + " --wait-time ") != -1:
|
||||||
bot.wait_time = wait_time_change(actor, ircmsg, ircsock, channel, greeters) # call this to check and change it
|
bot.wait_time = wait_time_change(actor, ircmsg, ircsock, channel, greeters, bot) # call this to check and change it
|
||||||
|
|
||||||
# If the server pings us then we've got to respond!
|
# If the server pings us then we've got to respond!
|
||||||
if ircmsg.find("PING :") != -1:
|
if ircmsg.find("PING :") != -1:
|
||||||
@ -206,17 +206,20 @@ def greeter_string(greeters):
|
|||||||
return greeterstring
|
return greeterstring
|
||||||
|
|
||||||
# Changes the wait time from the channel.
|
# Changes the wait time from the channel.
|
||||||
def wait_time_change(actor, ircmsg, ircsock, channel, channel_greeters):
|
def wait_time_change(actor, ircmsg, ircsock, channel, channel_greeters, bot):
|
||||||
for admin in channel_greeters:
|
for admin in channel_greeters:
|
||||||
if actor == admin:
|
if actor == admin:
|
||||||
finder = re.search(r'\d\d*', re.search(r'--wait-time \d\d*', ircmsg)
|
finder = re.search(r'\d\d*', re.search(r'--wait-time \d\d*', ircmsg)
|
||||||
.group())
|
.group())
|
||||||
ircsock.send("PRIVMSG {0} :{1} the wait time is changing to {2} "
|
ircsock.send("PRIVMSG {0} :{1} the wait time is changing to {2} "
|
||||||
"seconds.\n".format(channel, actor, finder.group()))
|
"seconds.\n".format(channel, actor, finder.group()))
|
||||||
return int(finder.group())
|
new_wait_time = int(finder.group())
|
||||||
|
return new_wait_time
|
||||||
ircsock.send("PRIVMSG {0} :{1} you are not authorized to make that "
|
ircsock.send("PRIVMSG {0} :{1} you are not authorized to make that "
|
||||||
"change. Please contact one of the channel greeters, like {2}, for "
|
"change. Please contact one of the channel greeters, like {2}, for "
|
||||||
"assistance.\n".format(channel, actor, greeter_string(channel_greeters)))
|
"assistance.\n".format(channel, actor, greeter_string(channel_greeters)))
|
||||||
|
unchanged_wait_time = bot.wait_time
|
||||||
|
return unchanged_wait_time
|
||||||
|
|
||||||
# Responds to server Pings.
|
# Responds to server Pings.
|
||||||
def pong(ircsock, ircmsg):
|
def pong(ircsock, ircmsg):
|
||||||
|
@ -187,10 +187,12 @@ class TestMessageResponse(unittest.TestCase):
|
|||||||
def test_wait_time_from_admin(self):
|
def test_wait_time_from_admin(self):
|
||||||
botcode.message_response(self.bot,"{} --wait-time 40".format(self.bot.botnick),"shauna",ircsock=self.ircsock, channel=settings.channel, greeters=settings.channel_greeters) # Channel-greeters may also be changed. :(
|
botcode.message_response(self.bot,"{} --wait-time 40".format(self.bot.botnick),"shauna",ircsock=self.ircsock, channel=settings.channel, greeters=settings.channel_greeters) # Channel-greeters may also be changed. :(
|
||||||
self.assertEqual(self.ircsock.sent_message(), "PRIVMSG {} :shauna the wait time is changing to 40 seconds.\n".format(settings.channel))
|
self.assertEqual(self.ircsock.sent_message(), "PRIVMSG {} :shauna the wait time is changing to 40 seconds.\n".format(settings.channel))
|
||||||
|
self.assertEqual(self.bot.wait_time, 40)
|
||||||
|
|
||||||
def test_wait_time_from_non_admin(self):
|
def test_wait_time_from_non_admin(self):
|
||||||
botcode.message_response(self.bot,"{} --wait-time 40".format(self.bot.botnick),"Impostor",ircsock=self.ircsock, channel=settings.channel, greeters=settings.channel_greeters) # Channel-greeters may also be changed. :(
|
botcode.message_response(self.bot,"{} --wait-time 40".format(self.bot.botnick),"Impostor",ircsock=self.ircsock, channel=settings.channel, greeters=settings.channel_greeters) # Channel-greeters may also be changed. :(
|
||||||
self.assertEqual(self.ircsock.sent_message(), "PRIVMSG {0} :Impostor you are not authorized to make that change. Please contact one of the channel greeters, like {1}, for assistance.\n".format(settings.channel,botcode.greeter_string(settings.channel_greeters)))
|
self.assertEqual(self.ircsock.sent_message(), "PRIVMSG {0} :Impostor you are not authorized to make that change. Please contact one of the channel greeters, like {1}, for assistance.\n".format(settings.channel,botcode.greeter_string(settings.channel_greeters)))
|
||||||
|
self.assertEqual(self.bot.wait_time, settings.wait_time)
|
||||||
|
|
||||||
def test_pong(self):
|
def test_pong(self):
|
||||||
botcode.message_response(self.bot,"PING :","Shauna",ircsock=self.ircsock, channel=settings.channel, greeters=settings.channel_greeters) # Replace this with actual ping message
|
botcode.message_response(self.bot,"PING :","Shauna",ircsock=self.ircsock, channel=settings.channel, greeters=settings.channel_greeters) # Replace this with actual ping message
|
||||||
|
Loading…
Reference in New Issue
Block a user