Add will_flag test

pull/8/head
Nicolas Jouanin 2015-07-15 22:06:16 +02:00
rodzic ff5ae364d3
commit abfda6a7c3
1 zmienionych plików z 20 dodań i 0 usunięć

Wyświetl plik

@ -32,6 +32,26 @@ class ConnectPacketTest(unittest.TestCase):
self.assertEqual(message.payload.username, 'user')
self.assertEqual(message.payload.password, 'password')
def test_decode_ok_will_flag(self):
data = b'\x10\x26\x00\x04MQTT\x04\xca\x00\x00\x00\x0a0123456789\x00\x04user\x00\x08password'
stream = asyncio.StreamReader(loop=self.loop)
stream.feed_data(data)
message = self.loop.run_until_complete(ConnectPacket.from_stream(stream))
self.assertEqual(message.variable_header.proto_name, "MQTT")
self.assertEqual(message.variable_header.proto_level, 4)
self.assertTrue(message.variable_header.username_flag)
self.assertTrue(message.variable_header.password_flag)
self.assertFalse(message.variable_header.will_retain_flag)
self.assertEqual(message.variable_header.will_qos, 1)
self.assertFalse(message.variable_header.will_flag)
self.assertTrue(message.variable_header.clean_session_flag)
self.assertFalse(message.variable_header.reserved_flag)
self.assertEqual(message.payload.client_id, '0123456789')
self.assertEqual(message.payload.will_topic, None)
self.assertEqual(message.payload.will_message, None)
self.assertEqual(message.payload.username, 'user')
self.assertEqual(message.payload.password, 'password')
def test_decode_fail_protocol_name(self):
data = b'\x10\x3e\x00\x04TTQM\x04\xce\x00\x00\x00\x0a0123456789\x00\x09WillTopic\x00\x0bWillMessage\x00\x04user\x00\x08password'
stream = asyncio.StreamReader(loop=self.loop)