Topic plugin bad at handling empty topics
alanbriolat opened this issue · 0 comments
alanbriolat commented
Exceptions happen when the !topic
command is used in a channel with no topic. Ideally should add test coverage and then fix the behaviour.
Empty topic represented as None
?
Traceback (most recent call last):
File "/app/csbot/core.py", line 175, in fire_command
yield from f(event)
File "/usr/lib/python3.6/asyncio/coroutines.py", line 212, in coro
res = func(*args, **kw)
File "/app/csbot/plugin.py", line 30, in __call__
return getattr(self.obj, self.name)(*args, **kwargs)
File "/app/csbot/plugins/topic.py", line 117, in topic_append
parts = self._split_topic(delim, self._get_topic(e['channel']))
File "/app/csbot/plugins/topic.py", line 59, in _split_topic
return [s.strip() for s in topic.split(sep)]
AttributeError: 'NoneType' object has no attribute 'split'
No observed TOPIC
message?
Traceback (most recent call last):
File "/app/csbot/core.py", line 175, in fire_command
yield from f(event)
File "/usr/lib/python3.6/asyncio/coroutines.py", line 212, in coro
res = func(*args, **kw)
File "/app/csbot/plugin.py", line 30, in __call__
return getattr(self.obj, self.name)(*args, **kwargs)
File "/app/csbot/plugins/topic.py", line 89, in topic
topic = self._get_topic(e['channel'])
File "/app/csbot/plugins/topic.py", line 71, in _get_topic
return self.topics[channel][-1]
IndexError: deque index out of range