diff options
| author | Oskari Timperi <oskari.timperi@iki.fi> | 2017-02-19 13:27:47 +0200 |
|---|---|---|
| committer | Oskari Timperi <oskari.timperi@iki.fi> | 2017-02-19 13:27:47 +0200 |
| commit | e44167e4ec483ae6b169bdc8104bedee731e071c (patch) | |
| tree | 7f66b4b0b2baa7fd1767770c2db994895b1dc535 /test | |
| parent | d8d647e4360b9570259ba9834f64b7d78ad36968 (diff) | |
| download | mqtt-e44167e4ec483ae6b169bdc8104bedee731e071c.tar.gz mqtt-e44167e4ec483ae6b169bdc8104bedee731e071c.zip | |
Add interop test: redelivery_on_reconnect_test
Diffstat (limited to 'test')
| -rw-r--r-- | test/interop/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | test/interop/redelivery_on_reconnect_test.c | 37 |
2 files changed, 38 insertions, 0 deletions
diff --git a/test/interop/CMakeLists.txt b/test/interop/CMakeLists.txt index 041727e..7b3e7bc 100644 --- a/test/interop/CMakeLists.txt +++ b/test/interop/CMakeLists.txt @@ -14,3 +14,4 @@ ADD_INTEROP_TEST(zero_length_clientid_test) ADD_INTEROP_TEST(offline_message_queueing_test) ADD_INTEROP_TEST(overlapping_subscriptions_test) ADD_INTEROP_TEST(keepalive_test) +ADD_INTEROP_TEST(redelivery_on_reconnect_test) diff --git a/test/interop/redelivery_on_reconnect_test.c b/test/interop/redelivery_on_reconnect_test.c new file mode 100644 index 0000000..c9e933d --- /dev/null +++ b/test/interop/redelivery_on_reconnect_test.c @@ -0,0 +1,37 @@ +#include "greatest.h" +#include "testclient.h" +#include "cleanup.c" +#include "topics.c" + +TEST redelivery_on_reconnect_test() +{ + TestClient *client; + + client = TestClientNew("clientb"); + ASSERT(TestClientConnect(client, "localhost", 1883, 60, 0)); + ASSERT(TestClientSubscribe(client, wildtopics[6], 2)); + MqttClientPause(client->client); + ASSERT(TestClientPublish(client, 1, 0, topics[1], "")); + ASSERT(TestClientPublish(client, 2, 0, topics[3], "")); + ASSERT(TestClientWait(client, 1000)); + TestClientDisconnect(client); + ASSERT_EQ(0, TestClientMessageCount(client)); + MqttClientResume(client->client); + ASSERT(TestClientConnect(client, "localhost", 1883, 60, 0)); + ASSERT(TestClientWait(client, 3000)); + ASSERT_EQ(2, TestClientMessageCount(client)); + TestClientDisconnect(client); + TestClientFree(client); + + PASS(); +} + +GREATEST_MAIN_DEFS(); + +int main(int argc, char **argv) +{ + GREATEST_MAIN_BEGIN(); + cleanup(); + RUN_TEST(redelivery_on_reconnect_test); + GREATEST_MAIN_END(); +} |
