From e0184c5422db1750f3fc6e28aad0f6ceb3aaf070 Mon Sep 17 00:00:00 2001 From: Jeremy Fincher Date: Wed, 8 Oct 2003 01:26:10 +0000 Subject: [PATCH] Added some more error-checking to the addAlias method. --- plugins/Alias.py | 2 ++ test/test_Alias.py | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/plugins/Alias.py b/plugins/Alias.py index 1312cb5ae..0804b23aa 100644 --- a/plugins/Alias.py +++ b/plugins/Alias.py @@ -189,6 +189,8 @@ class Alias(callbacks.Privmsg): def addAlias(self, irc, name, alias, freeze=False): if self._invalidCharsRe.search(name): raise AliasError, 'Names cannot contain spaces or square brackets.' + if conf.enablePipeSyntax and '|' in name: + raise AliasError, 'Names cannot contain pipes.' realName = callbacks.canonicalName(name) if name != realName: raise AliasError,'That name isn\'t valid. Try %r instead'%realName diff --git a/test/test_Alias.py b/test/test_Alias.py index ea0ba2c2d..13f3260ad 100644 --- a/test/test_Alias.py +++ b/test/test_Alias.py @@ -98,6 +98,13 @@ class AliasTestCase(PluginTestCase, PluginDocumentation): self.assertError('alias FOO foo') self.assertError('alias [] foo') self.assertError('alias "foo bar" foo') + try: + conf.enablePipeSyntax = True + self.assertError('alias "foo|bar" foo') + conf.enablePipeSyntax = False + self.assertNotError('alias "foo|bar" foo') + finally: + conf.enablePipeSyntax = False def testNotCannotNestRaised(self): self.assertNotError('alias mytell "tell $channel $1"')