def _pubrec(self, dl): recl = [] for i in range(0, len(dl)): rec= PUBREC() rec.msgId = dl[i].msgId recl.append(rec) encoded = bytearray() for rec in recl: encoded.extend(rec.encode()) self.protocol.dataReceived(encoded) self.transport.clear() for i in range(0, len(dl)): self.assertNoResult(dl[i])
def _pubrec(self, dl): recl = [] for i in range(0, len(dl)): rec = PUBREC() rec.msgId = dl[i].msgId recl.append(rec) encoded = bytearray() for rec in recl: encoded.extend(rec.encode()) self.protocol.dataReceived(encoded) self.transport.clear() for i in range(0, len(dl)): self.assertNoResult(dl[i])
def test_PUBREC_encdec(self): request = PUBREC() response = PUBREC() request.msgId = 30001 response.decode(request.encode()) self.assertEqual(request.msgId, response.msgId)
def test_publish_single_qos2(self): self._connect() d = self.protocol.publish(topic="foo/bar/baz1", qos=2, message="hello world 2") self.assertEqual(len(self.protocol.factory.windowPublish[self.addr]), 1) self.assertEqual( len(self.protocol.factory.windowPubRelease[self.addr]), 0) self.transport.clear() ack = PUBREC() ack.msgId = d.msgId self.protocol.dataReceived(ack.encode()) self.transport.clear() self.assertEqual(len(self.protocol.factory.windowPublish[self.addr]), 0) self.assertEqual( len(self.protocol.factory.windowPubRelease[self.addr]), 1) ack = PUBCOMP() ack.msgId = d.msgId self.protocol.dataReceived(ack.encode()) self.assertEqual(len(self.protocol.factory.windowPublish[self.addr]), 0) self.assertEqual( len(self.protocol.factory.windowPubRelease[self.addr]), 0) self.assertEqual(ack.msgId, self.successResultOf(d))
def test_publish_single_qos2(self): self._connect() d = self.protocol.publish(topic="foo/bar/baz1", qos=2, message="hello world 2") self.assertEqual(len(self.protocol.factory.queuePublishTx), 1) self.assertEqual(len(self.protocol.factory.queuePubRelease), 0) self.transport.clear() ack = PUBREC() ack.msgId = d.msgId self.protocol.dataReceived(ack.encode()) self.transport.clear() self.assertEqual(len(self.protocol.factory.queuePublishTx), 0) self.assertEqual(len(self.protocol.factory.queuePubRelease), 1) ack = PUBCOMP() ack.msgId = d.msgId self.protocol.dataReceived(ack.encode()) self.assertEqual(len(self.protocol.factory.queuePublishTx), 0) self.assertEqual(len(self.protocol.factory.queuePubRelease), 0) self.assertEqual(ack.msgId, self.successResultOf(d))