mirror of https://github.com/jesopo/irctokens
42 lines
1.5 KiB
Python
42 lines
1.5 KiB
Python
import unittest
|
|
import irctokens
|
|
|
|
class HostmaskTest(unittest.TestCase):
|
|
def test_all(self):
|
|
hostmask = irctokens.hostmask("nick!user@host")
|
|
self.assertEqual(hostmask.nickname, "nick")
|
|
self.assertEqual(hostmask.username, "user")
|
|
self.assertEqual(hostmask.hostname, "host")
|
|
|
|
def test_no_hostname(self):
|
|
hostmask = irctokens.hostmask("nick!user")
|
|
self.assertEqual(hostmask.nickname, "nick")
|
|
self.assertEqual(hostmask.username, "user")
|
|
self.assertIsNone(hostmask.hostname)
|
|
|
|
def test_no_ident(self):
|
|
hostmask = irctokens.hostmask("nick@host")
|
|
self.assertEqual(hostmask.nickname, "nick")
|
|
self.assertIsNone(hostmask.username)
|
|
self.assertEqual(hostmask.hostname, "host")
|
|
|
|
def test_only_nickname(self):
|
|
hostmask = irctokens.hostmask("nick")
|
|
self.assertEqual(hostmask.nickname, "nick")
|
|
self.assertIsNone(hostmask.username)
|
|
self.assertIsNone(hostmask.hostname)
|
|
|
|
def test_line(self):
|
|
line = irctokens.tokenise(":nick!user@host PRIVMSG #channel hello")
|
|
hostmask = irctokens.hostmask("nick!user@host")
|
|
self.assertEqual(line.hostmask, hostmask)
|
|
self.assertEqual(line.hostmask.nickname, "nick")
|
|
self.assertEqual(line.hostmask.username, "user")
|
|
self.assertEqual(line.hostmask.hostname, "host")
|
|
|
|
def test_none_source(self):
|
|
line = irctokens.tokenise("PRIVMSG #channel hello")
|
|
def _hostmask():
|
|
line.hostmask
|
|
self.assertRaises(ValueError, _hostmask)
|