mirror of
https://github.com/Mikaela/Limnoria.git
synced 2024-11-27 13:19:24 +01:00
Merge branch 'testing' of github.com:ProgVal/Limnoria into testing
This commit is contained in:
commit
5846059c3f
33
.gitignore
vendored
33
.gitignore
vendored
@ -1,22 +1,23 @@
|
|||||||
backup
|
#*#
|
||||||
build
|
|
||||||
dist
|
|
||||||
supybot.egg-info
|
|
||||||
test-data
|
|
||||||
test-conf
|
|
||||||
test-logs
|
|
||||||
*.pyc
|
|
||||||
docs/_build
|
|
||||||
docs/plugins
|
|
||||||
*.swp
|
|
||||||
*.swo
|
|
||||||
*~
|
|
||||||
*.mo
|
*.mo
|
||||||
|
*.py[co]
|
||||||
|
*~
|
||||||
|
.*.s[a-w][a-p]
|
||||||
|
.s[a-w][a-p]
|
||||||
|
MANIFEST
|
||||||
|
backup/
|
||||||
|
build/
|
||||||
debian/limnoria*
|
debian/limnoria*
|
||||||
debian/python-module-stampdir/
|
debian/python-module-stampdir/
|
||||||
dist/
|
dist/
|
||||||
push.sh
|
docs/_build/
|
||||||
|
docs/plugins/
|
||||||
|
limnoria.egg-info/
|
||||||
merge.sh
|
merge.sh
|
||||||
src/version.py
|
push.sh
|
||||||
MANIFEST
|
|
||||||
py3k/
|
py3k/
|
||||||
|
src/version.py
|
||||||
|
supybot.egg-info/
|
||||||
|
test-conf/
|
||||||
|
test-data/
|
||||||
|
test-logs/
|
||||||
|
@ -47,7 +47,7 @@ try:
|
|||||||
import sqlalchemy.ext
|
import sqlalchemy.ext
|
||||||
import sqlalchemy.ext.declarative
|
import sqlalchemy.ext.declarative
|
||||||
except ImportError:
|
except ImportError:
|
||||||
raise callbacks.error('You have to install python-sqlalchemy in order '
|
raise callbacks.Error('You have to install python-sqlalchemy in order '
|
||||||
'to load this plugin.')
|
'to load this plugin.')
|
||||||
|
|
||||||
if sqlalchemy:
|
if sqlalchemy:
|
||||||
|
@ -267,6 +267,8 @@ class Google(callbacks.PluginRegexp):
|
|||||||
|
|
||||||
while ',,' in result:
|
while ',,' in result:
|
||||||
result = result.replace(',,', ',null,')
|
result = result.replace(',,', ',null,')
|
||||||
|
while '[,' in result:
|
||||||
|
result = result.replace('[,', '[')
|
||||||
data = json.loads(result)
|
data = json.loads(result)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
@ -532,7 +532,11 @@ class IrcState(IrcCommandDispatcher):
|
|||||||
|
|
||||||
def do324(self, irc, msg):
|
def do324(self, irc, msg):
|
||||||
channel = msg.args[1]
|
channel = msg.args[1]
|
||||||
|
try:
|
||||||
chan = self.channels[channel]
|
chan = self.channels[channel]
|
||||||
|
except KeyError:
|
||||||
|
chan = ChannelState()
|
||||||
|
self.channels[channel] = chan
|
||||||
for (mode, value) in ircutils.separateModes(msg.args[2:]):
|
for (mode, value) in ircutils.separateModes(msg.args[2:]):
|
||||||
modeChar = mode[1]
|
modeChar = mode[1]
|
||||||
if mode[0] == '+' and mode[1] not in 'ovh':
|
if mode[0] == '+' and mode[1] not in 'ovh':
|
||||||
@ -543,7 +547,11 @@ class IrcState(IrcCommandDispatcher):
|
|||||||
def do329(self, irc, msg):
|
def do329(self, irc, msg):
|
||||||
# This is the last part of an empty mode.
|
# This is the last part of an empty mode.
|
||||||
channel = msg.args[1]
|
channel = msg.args[1]
|
||||||
|
try:
|
||||||
chan = self.channels[channel]
|
chan = self.channels[channel]
|
||||||
|
except KeyError:
|
||||||
|
chan = ChannelState()
|
||||||
|
self.channels[channel] = chan
|
||||||
chan.created = int(msg.args[2])
|
chan.created = int(msg.args[2])
|
||||||
|
|
||||||
def doPart(self, irc, msg):
|
def doPart(self, irc, msg):
|
||||||
|
@ -252,7 +252,9 @@ class Group(object):
|
|||||||
if not isValidRegistryName(name):
|
if not isValidRegistryName(name):
|
||||||
raise InvalidRegistryName, name
|
raise InvalidRegistryName, name
|
||||||
if node is None:
|
if node is None:
|
||||||
node = Group()
|
node = Group(private=self._private)
|
||||||
|
else:
|
||||||
|
node._private = node._private or self._private
|
||||||
# We tried in any number of horrible ways to make it so that
|
# We tried in any number of horrible ways to make it so that
|
||||||
# re-registering something would work. It doesn't, plain and simple.
|
# re-registering something would work. It doesn't, plain and simple.
|
||||||
# For the longest time, we had an "Is this right?" comment here, but
|
# For the longest time, we had an "Is this right?" comment here, but
|
||||||
|
@ -199,4 +199,29 @@ class ValuesTestCase(SupyTestCase):
|
|||||||
self.assertEqual(v(), 'bar')
|
self.assertEqual(v(), 'bar')
|
||||||
self.assertEqual(v(), 'foo')
|
self.assertEqual(v(), 'foo')
|
||||||
|
|
||||||
|
class SecurityTestCase(SupyTestCase):
|
||||||
|
def testPrivate(self):
|
||||||
|
v = registry.String('foo', 'help')
|
||||||
|
self.assertFalse(v._private)
|
||||||
|
v = registry.String('foo', 'help', private=True)
|
||||||
|
self.assertTrue(v._private)
|
||||||
|
|
||||||
|
g = registry.Group('foo')
|
||||||
|
v = registry.String('foo', 'help')
|
||||||
|
g.register('val', v)
|
||||||
|
self.assertFalse(g._private)
|
||||||
|
self.assertFalse(g.val._private)
|
||||||
|
|
||||||
|
g = registry.Group('foo', private=True)
|
||||||
|
v = registry.String('foo', 'help')
|
||||||
|
g.register('val', v)
|
||||||
|
self.assertTrue(g._private)
|
||||||
|
self.assertTrue(g.val._private)
|
||||||
|
|
||||||
|
g = registry.Group('foo')
|
||||||
|
v = registry.String('foo', 'help', private=True)
|
||||||
|
g.register('val', v)
|
||||||
|
self.assertFalse(g._private)
|
||||||
|
self.assertTrue(g.val._private)
|
||||||
|
|
||||||
# vim:set shiftwidth=4 softtabstop=4 expandtab textwidth=79:
|
# vim:set shiftwidth=4 softtabstop=4 expandtab textwidth=79:
|
||||||
|
Loading…
Reference in New Issue
Block a user