[TASK] Tests for topic, TODO: refactor irc.Mode.
This commit is contained in:
parent
ee804eeeb7
commit
35f358cccf
|
@ -239,13 +239,14 @@ class Part(Message, metaclass=register_derivative):
|
|||
self.message = self.get("trailing")
|
||||
|
||||
class Mode(Message, metaclass=register_derivative):
|
||||
def __init__(self, *args, **kwargs):
|
||||
def __init__(self, subject="", modes=None, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
if "data" not in kwargs:
|
||||
self.update({
|
||||
"command": "MODE",
|
||||
})
|
||||
def parse(self):
|
||||
#TODO: Implement this in a proper way!
|
||||
self.usermode = False
|
||||
self.source = self.get("nick")
|
||||
self.subject = self.get("params")[0]
|
||||
|
|
|
@ -116,3 +116,44 @@ class Message(unittest.TestCase):
|
|||
msg = irc.Part(channel="#tower", message="don't fall off")
|
||||
self.assertEqual(str(msg), "PART #tower :don't fall off")
|
||||
|
||||
|
||||
def test_parse_mode_usermode(self):
|
||||
#TODO
|
||||
raw = ":Me!~myself@localhost MODE Me :+ix"
|
||||
msg = irc.Message.from_string(raw)
|
||||
self.assertIsInstance(msg, irc.Mode, msg="Not a Mode!")
|
||||
self.assertEqual(msg.usermode, True)
|
||||
self.assertEqual(msg.flags, [('i', True), ('x', True)])
|
||||
self.assertEqual(msg.source, "Me")
|
||||
self.assertEqual(msg.subject, "Me")
|
||||
|
||||
def test_parse_mode_channelmode(self):
|
||||
#TODO
|
||||
raw = ":Mod!~moderator@ordering.chat MODE #botted +vo admin admin"
|
||||
msg = irc.Message.from_string(raw)
|
||||
self.assertIsInstance(msg, irc.Mode, msg="Not a Mode!")
|
||||
self.assertEqual(msg.usermode, False)
|
||||
self.assertEqual(msg.flags, [('v', True, 'admin'), ('o', True, 'admin')])
|
||||
self.assertEqual(msg.source, "Mod")
|
||||
self.assertEqual(msg.subject, "#botted")
|
||||
|
||||
def test_construct_mode_usermode(self):
|
||||
#TODO
|
||||
pass
|
||||
|
||||
def test_construct_mode_channelmode(self):
|
||||
#TODO
|
||||
pass
|
||||
|
||||
|
||||
def test_parse_topic(self):
|
||||
raw = ":chanop!~important@guy.org TOPIC #couch :New Topic!"
|
||||
msg = irc.Message.from_string(raw)
|
||||
self.assertIsInstance(msg, irc.Topic, msg="Not a Topic!")
|
||||
self.assertEqual(msg.source, "chanop")
|
||||
self.assertEqual(msg.channel, "#couch")
|
||||
self.assertEqual(msg.topic, "New Topic!")
|
||||
|
||||
def test_construct_topic(self):
|
||||
msg = irc.Topic(channel="#politics", topic="Yes, we can!")
|
||||
self.assertEqual(str(msg), "TOPIC #politics :Yes, we can!")
|
Loading…
Reference in New Issue