def test_parse_start(self): m = parse_method(connection_start_payload) self.assertEquals(m._method_id, 10) self.assertEquals(m._class_id, 10) self.assertEquals(m.version_major, 0) self.assertEquals(m.version_minor, 9) self.assertEquals(m.server_properties['version'], '2.1.1') self.assertEquals(m.mechanisms, 'PLAIN AMQPLAIN') self.assertEquals(m.locales, 'en_US')
def test_parse_dump_startok(self): peer_properties = dict(client="stormed-amqp") start_ok = connection.StartOk(client_properties=peer_properties, mechanism='PLAIN', response='', locale='en_US') data = dump_method(start_ok) self.assertEquals(len(data), 48) start_ok2 = parse_method(data) self.assertEquals(start_ok.mechanism, start_ok2.mechanism) self.assertEquals(start_ok.response, start_ok2.response) self.assertEquals(start_ok.locale, start_ok2.locale) self.assertEquals(start_ok.client_properties['client'], start_ok2.client_properties['client'])
def set_payload(self, payload): if self.frame_type == '\x01': self.payload = parse_method(payload) self.frame_type = 'method' elif self.frame_type == '\x02': self.payload = parse_content_header(payload) self.frame_type = 'content_header' elif self.frame_type == '\x03': self.payload = payload self.frame_type = 'content_body' elif self.frame_type == '\x08': self.frame_type = 'heartbeat' else: #FIXME logging instead of exception raise ValueError('unsupported frame type')