From bb927c7e6ad75b190ab3aeea7fd71d8cd2118eed Mon Sep 17 00:00:00 2001 From: Lance Stout Date: Tue, 20 Jul 2010 00:04:34 -0400 Subject: Updated presence stanza to include a 'show' interface. Presence stanza tests updated accordingly. --- tests/test_presencestanzas.py | 52 ++++++++++++++++++++++++++++++------------- 1 file changed, 37 insertions(+), 15 deletions(-) (limited to 'tests/test_presencestanzas.py') diff --git a/tests/test_presencestanzas.py b/tests/test_presencestanzas.py index 23eb911e..02799c8f 100644 --- a/tests/test_presencestanzas.py +++ b/tests/test_presencestanzas.py @@ -1,31 +1,53 @@ -import unittest +import sleekxmpp +from sleektest import * +from sleekxmpp.stanza.presence import Presence -class testpresencestanzas(unittest.TestCase): - - def setUp(self): - import sleekxmpp.stanza.presence as p - self.p = p +class TestPresenceStanzas(SleekTest): - def testPresenceShowRegression(self): - "Regression check presence['type'] = 'dnd' show value working" - p = self.p.Presence() + def testPresenceShowRegression(self): + """Regression check presence['type'] = 'dnd' show value working""" + p = self.Presence() p['type'] = 'dnd' - self.failUnless(str(p) == "dnd") - + self.checkPresence(p, """ + dnd + """) + + def testPresenceType(self): + """Test manipulating presence['type']""" + p = self.Presence() + p['type'] = 'available' + self.checkPresence(p, """ + + """) + self.failUnless(p['type'] == 'available', "Incorrect presence['type'] for type 'available'") + + for showtype in ['away', 'chat', 'dnd', 'xa']: + p['type'] = showtype + self.checkPresence(p, """ + %s + """ % showtype) + self.failUnless(p['type'] == showtype, "Incorrect presence['type'] for type '%s'" % showtype) + + p['type'] = None + self.checkPresence(p, """ + + """) + def testPresenceUnsolicitedOffline(self): - "Unsolicted offline presence does not spawn changed_status or update roster" - p = self.p.Presence() + """Unsolicted offline presence does not spawn changed_status or update roster""" + p = self.Presence() p['type'] = 'unavailable' p['from'] = 'bill@chadmore.com/gmail15af' - import sleekxmpp + c = sleekxmpp.ClientXMPP('crap@wherever', 'password') happened = [] def handlechangedpresence(event): happened.append(True) c.add_event_handler("changed_status", handlechangedpresence) c._handlePresence(p) + self.failUnless(happened == [], "changed_status event triggered for superfulous unavailable presence") self.failUnless(c.roster == {}, "Roster updated for superfulous unavailable presence") -suite = unittest.TestLoader().loadTestsFromTestCase(testpresencestanzas) +suite = unittest.TestLoader().loadTestsFromTestCase(TestPresenceStanzas) -- cgit v1.2.3 From 41ab2b84604849d0e650ecd833554b3488733785 Mon Sep 17 00:00:00 2001 From: Lance Stout Date: Tue, 3 Aug 2010 17:30:34 -0400 Subject: Updated presence stanza with documentation and PEP8 style. --- tests/test_presencestanzas.py | 96 ++++++++++++++++++++++--------------------- 1 file changed, 50 insertions(+), 46 deletions(-) (limited to 'tests/test_presencestanzas.py') diff --git a/tests/test_presencestanzas.py b/tests/test_presencestanzas.py index 02799c8f..2cab3af7 100644 --- a/tests/test_presencestanzas.py +++ b/tests/test_presencestanzas.py @@ -2,52 +2,56 @@ import sleekxmpp from sleektest import * from sleekxmpp.stanza.presence import Presence + class TestPresenceStanzas(SleekTest): - - def testPresenceShowRegression(self): - """Regression check presence['type'] = 'dnd' show value working""" - p = self.Presence() - p['type'] = 'dnd' - self.checkPresence(p, """ - dnd - """) - - def testPresenceType(self): - """Test manipulating presence['type']""" - p = self.Presence() - p['type'] = 'available' - self.checkPresence(p, """ - - """) - self.failUnless(p['type'] == 'available', "Incorrect presence['type'] for type 'available'") - - for showtype in ['away', 'chat', 'dnd', 'xa']: - p['type'] = showtype - self.checkPresence(p, """ - %s - """ % showtype) - self.failUnless(p['type'] == showtype, "Incorrect presence['type'] for type '%s'" % showtype) - - p['type'] = None - self.checkPresence(p, """ - - """) - - def testPresenceUnsolicitedOffline(self): - """Unsolicted offline presence does not spawn changed_status or update roster""" - p = self.Presence() - p['type'] = 'unavailable' - p['from'] = 'bill@chadmore.com/gmail15af' - - c = sleekxmpp.ClientXMPP('crap@wherever', 'password') - happened = [] - def handlechangedpresence(event): - happened.append(True) - c.add_event_handler("changed_status", handlechangedpresence) - c._handlePresence(p) - - self.failUnless(happened == [], "changed_status event triggered for superfulous unavailable presence") - self.failUnless(c.roster == {}, "Roster updated for superfulous unavailable presence") - + + def testPresenceShowRegression(self): + """Regression check presence['type'] = 'dnd' show value working""" + p = self.Presence() + p['type'] = 'dnd' + self.checkPresence(p, "dnd") + + def testPresenceType(self): + """Test manipulating presence['type']""" + p = self.Presence() + p['type'] = 'available' + self.checkPresence(p, "") + self.failUnless(p['type'] == 'available', + "Incorrect presence['type'] for type 'available'") + + for showtype in ['away', 'chat', 'dnd', 'xa']: + p['type'] = showtype + self.checkPresence(p, """ + %s + """ % showtype) + self.failUnless(p['type'] == showtype, + "Incorrect presence['type'] for type '%s'" % showtype) + + p['type'] = None + self.checkPresence(p, "") + + def testPresenceUnsolicitedOffline(self): + """ + Unsolicted offline presence does not spawn changed_status + or update the roster. + """ + p = self.Presence() + p['type'] = 'unavailable' + p['from'] = 'bill@chadmore.com/gmail15af' + + c = sleekxmpp.ClientXMPP('crap@wherever', 'password') + happened = [] + + def handlechangedpresence(event): + happened.append(True) + + c.add_event_handler("changed_status", handlechangedpresence) + c._handlePresence(p) + + self.failUnless(happened == [], + "changed_status event triggered for extra unavailable presence") + self.failUnless(c.roster == {}, + "Roster updated for superfulous unavailable presence") + suite = unittest.TestLoader().loadTestsFromTestCase(TestPresenceStanzas) -- cgit v1.2.3 From fec69be7318d9ad2a8e4ac128ac57f1969a6b852 Mon Sep 17 00:00:00 2001 From: Lance Stout Date: Tue, 3 Aug 2010 18:32:53 -0400 Subject: Update nick stanza with documentation and PEP8 style. --- tests/test_presencestanzas.py | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'tests/test_presencestanzas.py') diff --git a/tests/test_presencestanzas.py b/tests/test_presencestanzas.py index 2cab3af7..6c11263f 100644 --- a/tests/test_presencestanzas.py +++ b/tests/test_presencestanzas.py @@ -53,5 +53,15 @@ class TestPresenceStanzas(SleekTest): self.failUnless(c.roster == {}, "Roster updated for superfulous unavailable presence") + def testNickPlugin(self): + """Test presence/nick/nick stanza.""" + p = self.Presence() + p['nick']['nick'] = 'A nickname!' + self.checkPresence(p, """ + + A nickname! + + """) + suite = unittest.TestLoader().loadTestsFromTestCase(TestPresenceStanzas) -- cgit v1.2.3 From 58f77d898f82ab108fa17d562a32c68d3ea35306 Mon Sep 17 00:00:00 2001 From: Lance Stout Date: Thu, 5 Aug 2010 20:23:07 -0400 Subject: Updated tests to use a relative import for SleekTest to please Python3. Fixed some tabs/spaces issues. --- tests/test_presencestanzas.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests/test_presencestanzas.py') diff --git a/tests/test_presencestanzas.py b/tests/test_presencestanzas.py index 6c11263f..d6a5a388 100644 --- a/tests/test_presencestanzas.py +++ b/tests/test_presencestanzas.py @@ -1,5 +1,5 @@ import sleekxmpp -from sleektest import * +from . sleektest import * from sleekxmpp.stanza.presence import Presence -- cgit v1.2.3