summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Fritz <nathan@andyet.net>2010-03-26 13:27:13 -0700
committerNathan Fritz <nathan@andyet.net>2010-03-26 13:27:13 -0700
commit0659ddeff07b33d3f5e2c21cf9378dfc091386f1 (patch)
treed92ac93047ec8adcf215fe3829d5dbdbc0b680e8
parent7383f72367f5217c76ebb44e49a9753eb4f0aac2 (diff)
downloadslixmpp-0659ddeff07b33d3f5e2c21cf9378dfc091386f1.tar.gz
slixmpp-0659ddeff07b33d3f5e2c21cf9378dfc091386f1.tar.bz2
slixmpp-0659ddeff07b33d3f5e2c21cf9378dfc091386f1.tar.xz
slixmpp-0659ddeff07b33d3f5e2c21cf9378dfc091386f1.zip
added memleak test and attempted to fix presence leak
-rw-r--r--sleekxmpp/basexmpp.py2
-rw-r--r--tests/test_messagestanzas.py6
2 files changed, 7 insertions, 1 deletions
diff --git a/sleekxmpp/basexmpp.py b/sleekxmpp/basexmpp.py
index 91620731..961775ff 100644
--- a/sleekxmpp/basexmpp.py
+++ b/sleekxmpp/basexmpp.py
@@ -281,7 +281,7 @@ class basexmpp(object):
name = self.roster[jid].get('name', '')
if wasoffline and (show == 'available' or show in presence.showtypes):
self.event("got_online", presence)
- elif not wasoffline and show == 'unavailable':
+ elif show == 'unavailable':
logging.debug("%s %s got offline" % (jid, resource))
if len(self.roster[jid]['presence']) > 1:
del self.roster[jid]['presence'][resource]
diff --git a/tests/test_messagestanzas.py b/tests/test_messagestanzas.py
index ec44803f..4de482f3 100644
--- a/tests/test_messagestanzas.py
+++ b/tests/test_messagestanzas.py
@@ -16,4 +16,10 @@ class testmessagestanzas(unittest.TestCase):
msg.reply()
self.failUnless(str(msg['to']) == 'room@someservice.someserver.tld')
+ def testAttribProperty(self):
+ "Test attrib property returning self"
+ msg = self.m.Message()
+ msg.attrib.attrib.attrib['to'] = 'usr@server.tld'
+ self.failUnless(str(msg['to']) == 'usr@server.tld')
+
suite = unittest.TestLoader().loadTestsFromTestCase(testmessagestanzas)