Commit d6b93ef59aa79839e067e0afde563481e9ac4556
1 parent
d594f67b
Make testNotMessingUpQosLevels test accross protocol versions
Showing
1 changed file
with
84 additions
and
58 deletions
FlashMQTests/tst_maintests.cpp
| ... | ... | @@ -1299,64 +1299,90 @@ void MainTests::testNotMessingUpQosLevels() |
| 1299 | 1299 | const std::string topic = "HK7c1MFu6kdT69fWY"; |
| 1300 | 1300 | const std::string payload = "M4XK2LZ2Smaazba8RobZOgoe6CENxCll"; |
| 1301 | 1301 | |
| 1302 | - FlashMQTestClient testContextSender; | |
| 1303 | - FlashMQTestClient testContextReceiver1; | |
| 1304 | - FlashMQTestClient testContextReceiver2; | |
| 1305 | - FlashMQTestClient testContextReceiver3; | |
| 1306 | - FlashMQTestClient testContextReceiver4; | |
| 1307 | - FlashMQTestClient testContextReceiver5; | |
| 1308 | - | |
| 1309 | - testContextReceiver1.start(); | |
| 1310 | - testContextReceiver1.connectClient(ProtocolVersion::Mqtt311); | |
| 1311 | - testContextReceiver1.subscribe(topic, 0); | |
| 1312 | - | |
| 1313 | - testContextReceiver2.start(); | |
| 1314 | - testContextReceiver2.connectClient(ProtocolVersion::Mqtt311); | |
| 1315 | - testContextReceiver2.subscribe(topic, 1); | |
| 1316 | - | |
| 1317 | - testContextReceiver3.start(); | |
| 1318 | - testContextReceiver3.connectClient(ProtocolVersion::Mqtt311); | |
| 1319 | - testContextReceiver3.subscribe(topic, 2); | |
| 1320 | - | |
| 1321 | - testContextReceiver4.start(); | |
| 1322 | - testContextReceiver4.connectClient(ProtocolVersion::Mqtt311); | |
| 1323 | - testContextReceiver4.subscribe(topic, 1); | |
| 1324 | - | |
| 1325 | - testContextReceiver5.start(); | |
| 1326 | - testContextReceiver5.connectClient(ProtocolVersion::Mqtt311); | |
| 1327 | - testContextReceiver5.subscribe(topic, 0); | |
| 1328 | - | |
| 1329 | - testContextSender.start(); | |
| 1330 | - testContextSender.connectClient(ProtocolVersion::Mqtt311); | |
| 1331 | - testContextSender.publish(topic, payload, 2); | |
| 1332 | - | |
| 1333 | - testContextReceiver1.waitForMessageCount(1); | |
| 1334 | - testContextReceiver2.waitForMessageCount(1); | |
| 1335 | - testContextReceiver3.waitForMessageCount(1); | |
| 1336 | - testContextReceiver4.waitForMessageCount(1); | |
| 1337 | - testContextReceiver5.waitForMessageCount(1); | |
| 1338 | - | |
| 1339 | - MYCASTCOMPARE(testContextReceiver1.receivedPublishes.size(), 1); | |
| 1340 | - MYCASTCOMPARE(testContextReceiver2.receivedPublishes.size(), 1); | |
| 1341 | - MYCASTCOMPARE(testContextReceiver3.receivedPublishes.size(), 1); | |
| 1342 | - MYCASTCOMPARE(testContextReceiver4.receivedPublishes.size(), 1); | |
| 1343 | - MYCASTCOMPARE(testContextReceiver5.receivedPublishes.size(), 1); | |
| 1344 | - | |
| 1345 | - QCOMPARE(testContextReceiver1.receivedPublishes.front().getQos(), 0); | |
| 1346 | - QCOMPARE(testContextReceiver2.receivedPublishes.front().getQos(), 1); | |
| 1347 | - QCOMPARE(testContextReceiver3.receivedPublishes.front().getQos(), 2); | |
| 1348 | - QCOMPARE(testContextReceiver4.receivedPublishes.front().getQos(), 1); | |
| 1349 | - QCOMPARE(testContextReceiver5.receivedPublishes.front().getQos(), 0); | |
| 1350 | - | |
| 1351 | - QCOMPARE(testContextReceiver1.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1352 | - QCOMPARE(testContextReceiver2.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1353 | - QCOMPARE(testContextReceiver3.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1354 | - QCOMPARE(testContextReceiver4.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1355 | - QCOMPARE(testContextReceiver5.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1356 | - | |
| 1357 | - QCOMPARE(testContextReceiver2.receivedPublishes.front().getPacketId(), 1); | |
| 1358 | - QCOMPARE(testContextReceiver3.receivedPublishes.front().getPacketId(), 1); | |
| 1359 | - QCOMPARE(testContextReceiver4.receivedPublishes.front().getPacketId(), 1); | |
| 1302 | + std::list<ProtocolVersion> senderVersions {ProtocolVersion::Mqtt31, ProtocolVersion::Mqtt311, ProtocolVersion::Mqtt5}; | |
| 1303 | + std::list<ProtocolVersion> receiverVersions {ProtocolVersion::Mqtt31, ProtocolVersion::Mqtt311, ProtocolVersion::Mqtt5}; | |
| 1304 | + | |
| 1305 | + for (ProtocolVersion senderVersion : senderVersions) | |
| 1306 | + { | |
| 1307 | + for (ProtocolVersion receiverVersion : receiverVersions) | |
| 1308 | + { | |
| 1309 | + | |
| 1310 | + FlashMQTestClient testContextSender; | |
| 1311 | + FlashMQTestClient testContextReceiver1; | |
| 1312 | + FlashMQTestClient testContextReceiver2; | |
| 1313 | + FlashMQTestClient testContextReceiver3; | |
| 1314 | + FlashMQTestClient testContextReceiver4; | |
| 1315 | + FlashMQTestClient testContextReceiver5; | |
| 1316 | + FlashMQTestClient testContextReceiverMqtt3; | |
| 1317 | + FlashMQTestClient testContextReceiverMqtt5; | |
| 1318 | + | |
| 1319 | + testContextReceiver1.start(); | |
| 1320 | + testContextReceiver1.connectClient(receiverVersion); | |
| 1321 | + testContextReceiver1.subscribe(topic, 0); | |
| 1322 | + | |
| 1323 | + testContextReceiver2.start(); | |
| 1324 | + testContextReceiver2.connectClient(receiverVersion); | |
| 1325 | + testContextReceiver2.subscribe(topic, 1); | |
| 1326 | + | |
| 1327 | + testContextReceiver3.start(); | |
| 1328 | + testContextReceiver3.connectClient(receiverVersion); | |
| 1329 | + testContextReceiver3.subscribe(topic, 2); | |
| 1330 | + | |
| 1331 | + testContextReceiver4.start(); | |
| 1332 | + testContextReceiver4.connectClient(receiverVersion); | |
| 1333 | + testContextReceiver4.subscribe(topic, 1); | |
| 1334 | + | |
| 1335 | + testContextReceiver5.start(); | |
| 1336 | + testContextReceiver5.connectClient(receiverVersion); | |
| 1337 | + testContextReceiver5.subscribe(topic, 0); | |
| 1338 | + | |
| 1339 | + testContextReceiverMqtt3.start(); | |
| 1340 | + testContextReceiverMqtt3.connectClient(ProtocolVersion::Mqtt311); | |
| 1341 | + testContextReceiverMqtt3.subscribe(topic, 0); | |
| 1342 | + | |
| 1343 | + testContextReceiverMqtt5.start(); | |
| 1344 | + testContextReceiverMqtt5.connectClient(ProtocolVersion::Mqtt5); | |
| 1345 | + testContextReceiverMqtt5.subscribe(topic, 0); | |
| 1346 | + | |
| 1347 | + testContextSender.start(); | |
| 1348 | + testContextSender.connectClient(senderVersion); | |
| 1349 | + testContextSender.publish(topic, payload, 2); | |
| 1350 | + | |
| 1351 | + testContextReceiver1.waitForMessageCount(1); | |
| 1352 | + testContextReceiver2.waitForMessageCount(1); | |
| 1353 | + testContextReceiver3.waitForMessageCount(1); | |
| 1354 | + testContextReceiver4.waitForMessageCount(1); | |
| 1355 | + testContextReceiver5.waitForMessageCount(1); | |
| 1356 | + | |
| 1357 | + MYCASTCOMPARE(testContextReceiver1.receivedPublishes.size(), 1); | |
| 1358 | + MYCASTCOMPARE(testContextReceiver2.receivedPublishes.size(), 1); | |
| 1359 | + MYCASTCOMPARE(testContextReceiver3.receivedPublishes.size(), 1); | |
| 1360 | + MYCASTCOMPARE(testContextReceiver4.receivedPublishes.size(), 1); | |
| 1361 | + MYCASTCOMPARE(testContextReceiver5.receivedPublishes.size(), 1); | |
| 1362 | + MYCASTCOMPARE(testContextReceiverMqtt3.receivedPublishes.size(), 1); | |
| 1363 | + MYCASTCOMPARE(testContextReceiverMqtt5.receivedPublishes.size(), 1); | |
| 1364 | + | |
| 1365 | + QCOMPARE(testContextReceiver1.receivedPublishes.front().getQos(), 0); | |
| 1366 | + QCOMPARE(testContextReceiver2.receivedPublishes.front().getQos(), 1); | |
| 1367 | + QCOMPARE(testContextReceiver3.receivedPublishes.front().getQos(), 2); | |
| 1368 | + QCOMPARE(testContextReceiver4.receivedPublishes.front().getQos(), 1); | |
| 1369 | + QCOMPARE(testContextReceiver5.receivedPublishes.front().getQos(), 0); | |
| 1370 | + QCOMPARE(testContextReceiverMqtt3.receivedPublishes.front().getQos(), 0); | |
| 1371 | + QCOMPARE(testContextReceiverMqtt5.receivedPublishes.front().getQos(), 0); | |
| 1372 | + | |
| 1373 | + QCOMPARE(testContextReceiver1.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1374 | + QCOMPARE(testContextReceiver2.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1375 | + QCOMPARE(testContextReceiver3.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1376 | + QCOMPARE(testContextReceiver4.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1377 | + QCOMPARE(testContextReceiver5.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1378 | + QCOMPARE(testContextReceiverMqtt3.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1379 | + QCOMPARE(testContextReceiverMqtt5.receivedPublishes.front().getPayloadCopy(), payload); | |
| 1380 | + | |
| 1381 | + QCOMPARE(testContextReceiver2.receivedPublishes.front().getPacketId(), 1); | |
| 1382 | + QCOMPARE(testContextReceiver3.receivedPublishes.front().getPacketId(), 1); | |
| 1383 | + QCOMPARE(testContextReceiver4.receivedPublishes.front().getPacketId(), 1); | |
| 1384 | + } | |
| 1385 | + } | |
| 1360 | 1386 | } |
| 1361 | 1387 | |
| 1362 | 1388 | void MainTests::testUnSubscribe() | ... | ... |