mirror of https://github.com/jesopo/ircstates
add motd numeric (375, 372) support
This commit is contained in:
parent
d14a0557e1
commit
28d67df80a
|
@ -23,6 +23,7 @@ class Server(Named):
|
|||
|
||||
self.nickname = ""
|
||||
self.modes: List[str] = []
|
||||
self.motd: List[str] = []
|
||||
|
||||
self._encoder = StatefulEncoder()
|
||||
self._decoder = StatefulDecoder()
|
||||
|
@ -102,6 +103,14 @@ class Server(Named):
|
|||
def handle_ISUPPORT(self, line: Line):
|
||||
self.isupport.tokens(line.params[1:-1])
|
||||
|
||||
@line_handler("375")
|
||||
def handle_375(self, line: Line):
|
||||
self.motd.clear()
|
||||
@line_handler("375")
|
||||
@line_handler("372")
|
||||
def handle_372(self, line: Line):
|
||||
self.motd.append(line.params[1])
|
||||
|
||||
@line_handler("NICK")
|
||||
def handle_NICK(self, line: Line):
|
||||
new_nickname = line.params[0]
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
from .channel import *
|
||||
from .nickname import *
|
||||
from .mode import *
|
||||
from .motd import *
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
import unittest
|
||||
import ircstates, irctokens
|
||||
|
||||
class MOTDTest(unittest.TestCase):
|
||||
def test(self):
|
||||
server = ircstates.Server("test")
|
||||
server.parse_tokens(irctokens.tokenise("001 nickname"))
|
||||
server.parse_tokens(irctokens.tokenise("375 * :start of motd"))
|
||||
server.parse_tokens(irctokens.tokenise("372 * :first line of motd"))
|
||||
server.parse_tokens(irctokens.tokenise("372 * :second line of motd"))
|
||||
self.assertEqual(server.motd, [
|
||||
"start of motd",
|
||||
"first line of motd",
|
||||
"second line of motd"])
|
Loading…
Reference in New Issue