Ejemplo n.º 1
0
    def test_encode_ack(self):
        """encoding ack packet """
        encoded_message = encode({
            'type': 'ack',
            'ackId': 140,
            'endpoint': '',
            'args': []
        })
        self.assertEqual(encoded_message, '6:::140')

        # encoding ack packet with args
        encoded_message = encode({
            'type': 'ack',
            'ackId': 12,
            'endpoint': '',
            'args': ["woot", "wa"]
        })
        self.assertEqual(encoded_message, '6:::12+["woot","wa"]')

        # encoding ack packet with args and endpoint
        encoded_message = encode({
            'type': 'ack',
            'ackId': 12,
            'endpoint': '/chat',
            'args': ["woot", "wa"]
        })
        self.assertEqual(encoded_message, '6::/chat:12+["woot","wa"]')
Ejemplo n.º 2
0
    def test_encode_event(self):
        """encoding an event packet """
        encoded_message = encode({'type': 'event',
                                  'endpoint': '',
                                  'name': 'woot',
                                  'args': []
                                  })
        self.assertEqual(encoded_message, '5:::{"name":"woot"}')

        # encoding an event packet with message id and ack
        encoded_message = encode({'type': 'event',
                                  'name': 'tobi',
                                  'id': 1,
                                  'ack': True,
                                  'data': ''
                                  })
        self.assertEqual(encoded_message, '5:1+::{"name":"tobi"}')

        # encoding an event packet with data
        encoded_message = encode({'type': 'event',
                                  'name': 'edwald',
                                  'ack': True,
                                  'endpoint': '',
                                  'args': [{"a":"b"}, 2,"3"]
                                  })
        self.assertEqual(encoded_message,
                          '5:::{"args":[{"a":"b"},2,"3"],"name":"edwald"}')
Ejemplo n.º 3
0
    def test_encode_error(self):
        """encoding error packet """
        encoded_message = encode({'type': 'error',
                                  'reason': '',
                                  'advice': '',
                                  'endpoint': ''
                                  })
        self.assertEqual(encoded_message, '7:::')

        # encoding error packet with reason
        encoded_message = encode({'type': 'error',
                                  'reason': 'transport not supported',
                                  'advice': '',
                                  'endpoint': ''
                                  })
        self.assertEqual(encoded_message, '7:::0')

        # encoding error packet with reason and advice
        encoded_message = encode({'type': 'error',
                                  'reason': 'unauthorized',
                                  'advice': 'reconnect',
                                  'endpoint': ''
                                  })
        self.assertEqual(encoded_message, '7:::2+0')

        # encoding error packet with endpoint
        encoded_message = encode({'type': 'error',
                                  'reason': '',
                                  'advice': '',
                                  'endpoint': '/woot'
                                  })
        self.assertEqual(encoded_message, '7:::/woot')
Ejemplo n.º 4
0
    def test_encode_error(self):
        """encoding error packet """
        encoded_message = encode({'type': 'error',
                                  'reason': '',
                                  'advice': '',
                                  'endpoint': ''
                                  })
        self.assertEqual(encoded_message, '7:::')

        # encoding error packet with reason
        encoded_message = encode({'type': 'error',
                                  'reason': 'transport not supported',
                                  'advice': '',
                                  'endpoint': ''
                                  })
        self.assertEqual(encoded_message, '7:::0')

        # encoding error packet with reason and advice
        encoded_message = encode({'type': 'error',
                                  'reason': 'unauthorized',
                                  'advice': 'reconnect',
                                  'endpoint': ''
                                  })
        self.assertEqual(encoded_message, '7:::2+0')

        # encoding error packet with endpoint
        encoded_message = encode({'type': 'error',
                                  'reason': '',
                                  'advice': '',
                                  'endpoint': '/woot'
                                  })
        self.assertEqual(encoded_message, '7:::/woot')
Ejemplo n.º 5
0
    def test_encode_connect(self):
        """encoding a connection packet """

        encoded_message = encode({'type': 'connect',
                                  'endpoint': '/tobi',
                                  'qs': '',
                                  })
        self.assertEqual(encoded_message, '1::/tobi')

        # encoding a connection packet with query string
        encoded_message = encode({'type': 'connect',
                                  'endpoint': '/test',
                                  'qs': '?test=1'
                                  })
        self.assertEqual(encoded_message, '1::/test:?test=1')
Ejemplo n.º 6
0
    def test_encode_connect(self):
        """encoding a connection packet """

        encoded_message = encode({'type': 'connect',
                                  'endpoint': '/tobi',
                                  'qs': '',
                                  })
        self.assertEqual(encoded_message, '1::/tobi')

        # encoding a connection packet with query string
        encoded_message = encode({'type': 'connect',
                                  'endpoint': '/test',
                                  'qs': '?test=1'
                                  })
        self.assertEqual(encoded_message, '1::/test:?test=1')
Ejemplo n.º 7
0
    def test_encode_ack(self):
        """encoding ack packet """
        encoded_message = encode({'type': 'ack',
                                              'ackId': 140,
                                  'endpoint': '',
                                  'args': []
                                  })
        self.assertEqual(encoded_message, '6:::140')

        # encoding ack packet with args
        encoded_message = encode({'type': 'ack',
                                  'ackId': 12,
                                  'endpoint': '',
                                  'args': ["woot","wa"]
                                  })
        self.assertEqual(encoded_message, '6:::12+["woot","wa"]')
Ejemplo n.º 8
0
 def test_encode_message_with_no_endpoint(self):
     """encoding a message packet """
     encoded_message = encode({'type': 'message',
                               'endpoint': None,
                               'data': 'woot'
                               })
     self.assertEqual(encoded_message, '3:::woot')
Ejemplo n.º 9
0
    def test_encode_message(self):
        """encoding a message packet """
        encoded_message = encode({'type': 'message',
                                  'endpoint': '',
                                  'data': 'woot'
                                  })
        self.assertEqual(encoded_message, '3:::woot')

        # encoding a message packet with id and endpoint
        encoded_message = encode({'type': 'message',
                                  'endpoint': '/tobi',
                                  'id': 5,
                                  'ack': True,
                                  'data': ''
                                  })
        self.assertEqual(encoded_message, '3:5:/tobi')
Ejemplo n.º 10
0
 def test_encode_noop(self):
     """encoding a noop packet """
     encoded_message = encode({'type': 'noop',
                               'endpoint': '',
                               'data': ''
                               })
     self.assertEqual(encoded_message, '8::')
Ejemplo n.º 11
0
    def test_encode_json(self):
        """encoding JSON packet """
        encoded_message = encode({'type': 'json', 'endpoint': '', 'data': '2'})
        self.assertEqual(encoded_message, '4:::"2"')

        # encoding json packet with message id and ack data
        encoded_message = encode({
            'type': 'json',
            'id': 1,
            'ack': 'data',
            'endpoint': '',
            'data': {
                'a': 'b'
            }
        })
        self.assertEqual(encoded_message, '4:1+::{"a":"b"}')
Ejemplo n.º 12
0
    def test_encode_json(self):
        """encoding JSON packet """
        encoded_message = encode({'type': 'json',
                                  'endpoint': '',
                                  'data': '2'
                                  })
        self.assertEqual(encoded_message, '4:::"2"')

        # encoding json packet with message id and ack data
        encoded_message = encode({'type': 'json',
                                  'id': 1,
                                  'ack': 'data',
                                  'endpoint': '',
                                  'data': {'a' : 'b'}
                                  })
        self.assertEqual(encoded_message, '4:1+::{"a":"b"}')
Ejemplo n.º 13
0
 def test_encode_noop(self):
     """encoding a noop packet """
     encoded_message = encode({'type': 'noop',
                               'endpoint': '',
                               'data': ''
                               })
     self.assertEqual(encoded_message, '8::')
Ejemplo n.º 14
0
    def test_encode_message(self):
        """encoding a message packet """        
        encoded_message = encode({'type': 'message',
                                  'endpoint': '',
                                  'data': 'woot'
                                  })
        self.assertEqual(encoded_message, '3:::woot')

        # encoding a message packet with id and endpoint
        encoded_message = encode({'type': 'message',
                                  'endpoint': '/tobi',
                                  'id': 5,
                                  'ack': True,
                                  'data': ''
                                  })
        self.assertEqual(encoded_message, '3:5:/tobi')
Ejemplo n.º 15
0
 def test_encode_json_decimals(self):
     """encoding JSON packet with a decimal"""
     # encoding json packet with message id and ack data
     encoded_message = encode({'type': 'json',
                               'id': 1,
                               'ack': 'data',
                               'endpoint': '',
                               'data': {'a' : decimal.Decimal('%f' % (0.5))}
                               })
     self.assertEqual(encoded_message, '4:1+::{"a":0.5}')
Ejemplo n.º 16
0
 def test_encode_json_decimals(self):
     """encoding JSON packet with a decimal"""
     # encoding json packet with message id and ack data
     encoded_message = encode({'type': 'json',
                               'id': 1,
                               'ack': 'data',
                               'endpoint': '',
                               'data': {'a' : decimal.Decimal('%0.1f' % (0.5))}
                               })
     self.assertEqual(encoded_message, '4:1+::{"a":0.5}')
Ejemplo n.º 17
0
    def test_encode_event(self):
        """encoding an event packet """
        encoded_message = encode({
            'type': 'event',
            'endpoint': '',
            'name': 'woot',
            'args': []
        })
        self.assertEqual(encoded_message, '5:::{"name":"woot"}')

        # encoding an event packet with message id and ack
        encoded_message = encode({
            'type': 'event',
            'name': 'tobi',
            'id': 1,
            'ack': True,
            'data': ''
        })
        self.assertEqual(encoded_message, '5:1::{"name":"tobi"}')

        # encoding an event packet with message id and ack = 'data'
        encoded_message = encode({
            'type': 'event',
            'name': 'tobi',
            'id': 1,
            'ack': 'data',
            'data': ''
        })
        self.assertEqual(encoded_message, '5:1+::{"name":"tobi"}')

        # encoding an event packet with data
        encoded_message = encode({
            'type': 'event',
            'name': 'edwald',
            'ack': True,
            'endpoint': '',
            'args': [{
                "a": "b"
            }, 2, "3"]
        })
        self.assertEqual(encoded_message,
                         '5:::{"args":[{"a":"b"},2,"3"],"name":"edwald"}')
Ejemplo n.º 18
0
 def send_packet(self, pkt):
     """Low-level interface to queue a packet on the wire (encoded as wire
     protocol"""
     self.put_client_msg(packet.encode(pkt))
Ejemplo n.º 19
0
 def test_encode_heartbeat(self):
     """encoding a connection packet """
     encoded_message = encode({'type': 'heartbeat',
                               'endpoint': ''
                               })
     self.assertEqual(encoded_message, '2::')
Ejemplo n.º 20
0
 def test_encode_disconnect(self):
     """encoding a disconnection packet """
     encoded_message = encode({'type': 'disconnect', 'endpoint': '/woot'})
     self.assertEqual(encoded_message, '0::/woot')
Ejemplo n.º 21
0
 def test_encode_disconnect(self):
     """encoding a disconnection packet """
     encoded_message = encode({'type': 'disconnect',
                               'endpoint': '/woot'
                               })
     self.assertEqual(encoded_message, '0::/woot')
Ejemplo n.º 22
0
 def send_packet(self, pkt):
     """Low-level interface to queue a packet on the wire (encoded as wire
     protocol"""
     self.put_client_msg(packet.encode(pkt, self.json_dumps))
Ejemplo n.º 23
0
 def test_encode_heartbeat(self):
     """encoding a connection packet """
     encoded_message = encode({'type': 'heartbeat', 'endpoint': ''})
     self.assertEqual(encoded_message, '2::')