mirror of https://github.com/jesopo/ircstates
save numeric ip result from WHOX
This commit is contained in:
parent
2fb81e7aef
commit
8a31f0190d
|
@ -36,6 +36,7 @@ class Server(object):
|
|||
self.account: Optional[str] = None
|
||||
self.server: Optional[str] = None
|
||||
self.away: Optional[str] = None
|
||||
self.ip: Optional[str] = None
|
||||
|
||||
self.registered = False
|
||||
self.modes: List[str] = []
|
||||
|
@ -682,6 +683,9 @@ class Server(object):
|
|||
server: Optional[str] = None
|
||||
if not line.params[5] == "*":
|
||||
server = line.params[5]
|
||||
ip: Optional[str] = None
|
||||
if not line.params[3] == "255.255.255.255":
|
||||
ip = line.params[3]
|
||||
|
||||
if nickname_lower in self.users:
|
||||
user = self.users[nickname_lower]
|
||||
|
@ -692,6 +696,7 @@ class Server(object):
|
|||
user.account = account
|
||||
user.server = server
|
||||
user.away = away
|
||||
user.ip = ip
|
||||
|
||||
if nickname_lower == self.nickname_lower:
|
||||
emit.self = True
|
||||
|
@ -701,6 +706,7 @@ class Server(object):
|
|||
self.account = account
|
||||
self.server = server
|
||||
self.away = away
|
||||
self.ip = ip
|
||||
|
||||
return emit
|
||||
|
||||
|
|
|
@ -11,6 +11,7 @@ class User(object):
|
|||
self.account: Optional[str] = None
|
||||
self.server: Optional[str] = None
|
||||
self.away: Optional[str] = None
|
||||
self.ip: Optional[str] = None
|
||||
self.channels: Set[str] = set([])
|
||||
|
||||
def __repr__(self) -> str:
|
||||
|
|
|
@ -42,6 +42,7 @@ class WHOTest(unittest.TestCase):
|
|||
self.assertEqual(user.account, "account")
|
||||
self.assertEqual(user.server, "server")
|
||||
self.assertIsNone(user.away)
|
||||
self.assertEqual(user.ip, "realip")
|
||||
|
||||
self.assertEqual(server.username, user.username)
|
||||
self.assertEqual(server.hostname, user.hostname)
|
||||
|
@ -49,6 +50,7 @@ class WHOTest(unittest.TestCase):
|
|||
self.assertEqual(server.account, user.account)
|
||||
self.assertEqual(server.server, user.server)
|
||||
self.assertIsNone(server.away)
|
||||
self.assertEqual(server.ip, user.ip)
|
||||
|
||||
server.parse_tokens(irctokens.tokenise(
|
||||
f"354 * {WHO_TYPE} user realip host server nickname G account :real"))
|
||||
|
|
Loading…
Reference in New Issue