diff options
Diffstat (limited to 'tests/test_stanza_xep_0009.py')
-rw-r--r-- | tests/test_stanza_xep_0009.py | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/tests/test_stanza_xep_0009.py b/tests/test_stanza_xep_0009.py new file mode 100644 index 00000000..f6ab7ed0 --- /dev/null +++ b/tests/test_stanza_xep_0009.py @@ -0,0 +1,55 @@ +""" + SleekXMPP: The Sleek XMPP Library + Copyright (C) 2011 Nathanael C. Fritz, Dann Martens (TOMOTON). + This file is part of SleekXMPP. + + See the file LICENSE for copying permission. +""" + +from sleekxmpp.plugins.old_0009 import py2xml +from sleekxmpp.plugins.xep_0009.stanza.RPC import RPCQuery, MethodCall, \ + MethodResponse +from sleekxmpp.stanza.iq import Iq +from sleekxmpp.test.sleektest import SleekTest +from sleekxmpp.xmlstream.stanzabase import register_stanza_plugin +import unittest + + + +class TestJabberRPC(SleekTest): + + def setUp(self): + register_stanza_plugin(Iq, RPCQuery) + register_stanza_plugin(RPCQuery, MethodCall) + register_stanza_plugin(RPCQuery, MethodResponse) + + def testMethodCall(self): + iq = self.Iq() + iq['rpc_query']['method_call']['method_name'] = 'system.exit' + iq['rpc_query']['method_call']['params'] = py2xml(*()) + self.check(iq, """ + <iq> + <query xmlns="jabber:iq:rpc"> + <methodCall> + <methodName>system.exit</methodName> + <params /> + </methodCall> + </query> + </iq> + """, use_values=False) + + def testMethodResponse(self): + iq = self.Iq() + iq['rpc_query']['method_response']['params'] = py2xml(*()) + self.check(iq, """ + <iq> + <query xmlns="jabber:iq:rpc"> + <methodResponse> + <params /> + </methodResponse> + </query> + </iq> + """, use_values=False) + +suite = unittest.TestLoader().loadTestsFromTestCase(TestJabberRPC) +
\ No newline at end of file |