Edit Status and Web plugins in order to use %S

This commit is contained in:
Valentin Lorentz 2010-10-16 11:37:58 +02:00
parent e556fbde2e
commit b47c7c92a3
3 changed files with 14 additions and 13 deletions

View File

@ -104,11 +104,11 @@ class Status(callbacks.Plugin):
timeElapsed = utils.timeElapsed(elapsed) timeElapsed = utils.timeElapsed(elapsed)
except KeyError: except KeyError:
timeElapsed = 'an indeterminate amount of time' timeElapsed = 'an indeterminate amount of time'
irc.reply('I have received %s messages for a total of %s bytes. ' irc.reply(format('I have received %s messages for a total of %S. '
'I have sent %s messages for a total of %s bytes. ' 'I have sent %s messages for a total of %S. '
'I have been connected to %s for %s.' % 'I have been connected to %s for %s.',
(self.recvdMsgs, self.recvdBytes, self.recvdMsgs, self.recvdBytes,
self.sentMsgs, self.sentBytes, irc.server, timeElapsed)) self.sentMsgs, self.sentBytes, irc.server, timeElapsed))
net = wrap(net) net = wrap(net)
def cpu(self, irc, msg, args): def cpu(self, irc, msg, args):
@ -154,10 +154,10 @@ class Status(callbacks.Plugin):
irc.error('Unable to run ps command.', Raise=True) irc.error('Unable to run ps command.', Raise=True)
(out, _) = inst.communicate() (out, _) = inst.communicate()
inst.wait() inst.wait()
mem = out.splitlines()[1] mem = int(out.splitlines()[1])
elif sys.platform.startswith('netbsd'): elif sys.platform.startswith('netbsd'):
mem = '%s kB' % os.stat('/proc/%s/mem' % pid)[7] mem = int(os.stat('/proc/%s/mem' % pid)[7])
response += ' I\'m taking up %s kB of memory.' % mem response += format(' I\'m taking up %S of memory.', mem)
except Exception: except Exception:
self.log.exception('Uncaught exception in cpu.memory:') self.log.exception('Uncaught exception in cpu.memory:')
irc.reply(utils.str.normalizeWhitespace(response)) irc.reply(utils.str.normalizeWhitespace(response))

View File

@ -44,7 +44,8 @@ class StatusTestCase(PluginTestCase):
self.failIf('None' in m.args[1], 'None in cpu output: %r.' % m) self.failIf('None' in m.args[1], 'None in cpu output: %r.' % m)
for s in ['linux', 'freebsd', 'openbsd', 'netbsd', 'darwin']: for s in ['linux', 'freebsd', 'openbsd', 'netbsd', 'darwin']:
if sys.platform.startswith(s): if sys.platform.startswith(s):
self.failUnless('kB' in m.args[1], self.failUnless('B' in m.args[1] or 'KB' in m.args[1] or
'MB' in m.args[1],
'No memory string on supported platform.') 'No memory string on supported platform.')
try: try:
original = conf.supybot.plugins.Status.cpu.get('children')() original = conf.supybot.plugins.Status.cpu.get('children')()

View File

@ -149,15 +149,15 @@ class Web(callbacks.PluginRegexp):
try: try:
try: try:
size = fd.headers['Content-Length'] size = fd.headers['Content-Length']
irc.reply(format('%u is %i bytes long.', url, size)) irc.reply(format('%u is %S long.', url, size))
except KeyError: except KeyError:
size = conf.supybot.protocols.http.peekSize() size = conf.supybot.protocols.http.peekSize()
s = fd.read(size) s = fd.read(size)
if len(s) != size: if len(s) != size:
irc.reply(format('%u is %i bytes long.', url, len(s))) irc.reply(format('%u is %S long.', url, len(s)))
else: else:
irc.reply(format('The server didn\'t tell me how long %u ' irc.reply(format('The server didn\'t tell me how long %u '
'is but it\'s longer than %i bytes.', 'is but it\'s longer than %S.',
url, size)) url, size))
finally: finally:
fd.close() fd.close()
@ -182,7 +182,7 @@ class Web(callbacks.PluginRegexp):
irc.reply('That URL appears to have no HTML title.') irc.reply('That URL appears to have no HTML title.')
else: else:
irc.reply(format('That URL appears to have no HTML title ' irc.reply(format('That URL appears to have no HTML title '
'within the first %i bytes.', size)) 'within the first %S.', size))
title = wrap(title, ['httpUrl']) title = wrap(title, ['httpUrl'])
_netcraftre = re.compile(r'td align="left">\s+<a[^>]+>(.*?)<a href', _netcraftre = re.compile(r'td align="left">\s+<a[^>]+>(.*?)<a href',