mirror of
https://github.com/progval/Limnoria.git
synced 2025-05-05 09:50:52 -05:00
tests.py: wAdded Refresh and Restore tests. plugin.py: Empty lastTopics[channel] raise a KeyError for testing purposes.
This commit is contained in:
parent
54ee1e7670
commit
16ffdf69eb
@ -515,6 +515,8 @@ class Topic(callbacks.Plugin):
|
|||||||
irc.errorNoCapability(capabilities, Raise=True)
|
irc.errorNoCapability(capabilities, Raise=True)
|
||||||
try:
|
try:
|
||||||
topics = self.lastTopics[channel]
|
topics = self.lastTopics[channel]
|
||||||
|
if not topics:
|
||||||
|
raise KeyError
|
||||||
except KeyError:
|
except KeyError:
|
||||||
irc.error(format(_('I haven\'t yet set the topic in %s.'),
|
irc.error(format(_('I haven\'t yet set the topic in %s.'),
|
||||||
channel))
|
channel))
|
||||||
@ -535,9 +537,17 @@ class Topic(callbacks.Plugin):
|
|||||||
topic = irc.state.channels[channel].topic
|
topic = irc.state.channels[channel].topic
|
||||||
if topic:
|
if topic:
|
||||||
self._sendTopics(irc, channel, topic)
|
self._sendTopics(irc, channel, topic)
|
||||||
else:
|
return
|
||||||
self.restore(irc, msg, args, channel)
|
try:
|
||||||
set = wrap(refresh, ['canChangetopic'])
|
topics = self.lastTopics[channel]
|
||||||
|
if not topics:
|
||||||
|
raise KeyError
|
||||||
|
except KeyError:
|
||||||
|
irc.error(format(_('I haven\'t yet set the topic in %s.'),
|
||||||
|
channel))
|
||||||
|
return
|
||||||
|
self._sendTopics(irc, channel, topics)
|
||||||
|
refresh = wrap(refresh, ['canChangeTopic'])
|
||||||
|
|
||||||
@internationalizeDocstring
|
@internationalizeDocstring
|
||||||
def undo(self, irc, msg, args, channel):
|
def undo(self, irc, msg, args, channel):
|
||||||
|
@ -162,6 +162,20 @@ class TopicTestCase(ChannelPluginTestCase):
|
|||||||
finally:
|
finally:
|
||||||
conf.supybot.plugins.Topic.format.setValue(orig)
|
conf.supybot.plugins.Topic.format.setValue(orig)
|
||||||
|
|
||||||
|
def testRestore(self):
|
||||||
|
self.getMsg('topic set foo')
|
||||||
|
self.assertResponse('topic restore', 'foo')
|
||||||
|
self.getMsg('topic remove 1')
|
||||||
|
restoreError = 'Error: I haven\'t yet set the topic in #test.'
|
||||||
|
self.assertResponse('topic restore', restoreError)
|
||||||
|
|
||||||
|
def testRefresh(self):
|
||||||
|
self.getMsg('topic set foo')
|
||||||
|
self.assertResponse('topic refresh', 'foo')
|
||||||
|
self.getMsg('topic remove 1')
|
||||||
|
refreshError = 'Error: I haven\'t yet set the topic in #test.'
|
||||||
|
self.assertResponse('topic refresh', refreshError)
|
||||||
|
|
||||||
def testUndo(self):
|
def testUndo(self):
|
||||||
try:
|
try:
|
||||||
original = conf.supybot.plugins.Topic.format()
|
original = conf.supybot.plugins.Topic.format()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user