Пример #1
0
 def AddHandshakeCompletedConnection(self):
     """Creates a new XMPP connection and completes its handshake.
 """
     xmpp_connection = self.handle_accept()
     jid = xmppserver.Jid('user%s' % self._next_jid_suffix, 'domain.com')
     self._next_jid_suffix += 1
     xmpp_connection.HandshakeDone(jid)
Пример #2
0
    def testBasic(self):
        socket_map = {}
        xmpp_connection = xmppserver.XmppConnection(self.fake_socket,
                                                    socket_map, self, ('', 0),
                                                    True)
        self.assertEqual(len(socket_map), 1)
        self.assertEqual(len(self.connections), 0)
        xmpp_connection.HandshakeDone(xmppserver.Jid('foo', 'bar'))
        self.assertEqual(len(socket_map), 1)
        self.assertEqual(len(self.connections), 1)

        sent_data = self.fake_socket.GetSentData()

        # Test subscription request.
        self.assertEqual(len(sent_data), 0)
        xmpp_connection.collect_incoming_data(
            '<iq><subscribe xmlns="google:push"></subscribe></iq>')
        self.assertEqual(len(sent_data), 1)

        # Test acks.
        xmpp_connection.collect_incoming_data('<iq type="result"/>')
        self.assertEqual(len(sent_data), 1)

        # Test notification.
        xmpp_connection.collect_incoming_data(
            '<message><push xmlns="google:push"/></message>')
        self.assertEqual(len(sent_data), 2)

        # Test unexpected stanza.
        def SendUnexpectedStanza():
            xmpp_connection.collect_incoming_data('<foo/>')

        self.assertRaises(xmppserver.UnexpectedXml, SendUnexpectedStanza)

        # Test unexpected notifier command.
        def SendUnexpectedNotifierCommand():
            xmpp_connection.collect_incoming_data(
                '<iq><foo xmlns="google:notifier"/></iq>')

        self.assertRaises(xmppserver.UnexpectedXml,
                          SendUnexpectedNotifierCommand)

        # Test close.
        xmpp_connection.close()
        self.assertEqual(len(socket_map), 0)
        self.assertEqual(len(self.connections), 0)
Пример #3
0
    def testBasic(self):
        socket_map = {}
        xmpp_connection = xmppserver.XmppConnection(self, socket_map, self,
                                                    ('', 0))
        self.assertEqual(len(socket_map), 1)
        self.assertEqual(len(self.connections), 0)
        xmpp_connection.HandshakeDone(xmppserver.Jid('foo', 'bar'))
        self.assertEqual(len(socket_map), 1)
        self.assertEqual(len(self.connections), 1)

        # Test subscription request.
        self.assertEqual(len(self.data), 0)
        xmpp_connection.collect_incoming_data(
            '<iq><getAll xmlns="google:notifier">'
            '<SubscribedServiceUrl/></getAll></iq>')
        self.assertEqual(len(self.data), 1)

        # Test acks.
        xmpp_connection.collect_incoming_data('<iq type="result"/>')
        self.assertEqual(len(self.data), 1)

        # Test notification.
        xmpp_connection.collect_incoming_data(
            '<iq><set xmlns="google:notifier"/></iq>')
        self.assertEqual(len(self.data), 2)

        # Test unexpected stanza.
        def SendUnexpectedStanza():
            xmpp_connection.collect_incoming_data('<foo/>')

        self.assertRaises(xmppserver.UnexpectedXml, SendUnexpectedStanza)

        # Test unexpected notifier command.
        def SendUnexpectedNotifierCommand():
            xmpp_connection.collect_incoming_data(
                '<iq><foo xmlns="google:notifier"/></iq>')

        self.assertRaises(xmppserver.UnexpectedXml,
                          SendUnexpectedNotifierCommand)

        # Test close
        xmpp_connection.close()
        self.assertEqual(len(socket_map), 0)
        self.assertEqual(len(self.connections), 0)
Пример #4
0
 def testGetBareJid(self):
     jid = xmppserver.Jid('foo', 'bar.com', 'resource')
     self.assertEqual(str(jid.GetBareJid()), '*****@*****.**')
Пример #5
0
 def testResource(self):
     jid = xmppserver.Jid('foo', 'bar.com', 'resource')
     self.assertEqual(str(jid), '[email protected]/resource')
Пример #6
0
 def testBasic(self):
     jid = xmppserver.Jid('foo', 'bar.com')
     self.assertEqual(str(jid), '*****@*****.**')