diff options
author | dec05eba <dec05eba@protonmail.com> | 2018-10-21 13:49:34 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2020-08-18 22:56:48 +0200 |
commit | f96ed2f3195166485875e801cd0d923023a2dd4e (patch) | |
tree | 1720e76558c3b92ca127f05502b42fe9f4890ba8 /tests | |
parent | 4f84a5d325686202bd623ee530d197596ff3f411 (diff) |
Async bootstrap connect
Diffstat (limited to 'tests')
-rw-r--r-- | tests/main.cpp | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/tests/main.cpp b/tests/main.cpp index e262e02..7bb63e2 100644 --- a/tests/main.cpp +++ b/tests/main.cpp @@ -14,10 +14,21 @@ int main() const sibs::PubsubKey key2("zbcdefghcjklmn3pqrs5uvx2z0123F56789", 35); sibs::BootstrapNode boostrapNode(sibs::Ipv4(nullptr, PORT)); - sibs::BootstrapConnection connection1(sibs::Ipv4("127.0.0.1", PORT)); + bool connectionFailure = false; + try + { + sibs::BootstrapConnection::create(sibs::Ipv4("127.0.0.1", 2222)).get(); + } + catch(sibs::BootstrapConnectionException &e) + { + connectionFailure = true; + } + REQUIRE(connectionFailure); + + std::unique_ptr<sibs::BootstrapConnection> connection1 = sibs::BootstrapConnection::create(sibs::Ipv4("127.0.0.1", PORT)).get(); bool gotData1 = false; bool gotAsdf1 = false; - connection1.listen(key, [&gotData1, &gotAsdf1](const sibs::DirectConnectionPeer *peer, const void *data, const sibs::usize size) + connection1->listen(key, [&gotData1, &gotAsdf1](const sibs::DirectConnectionPeer *peer, const void *data, const sibs::usize size) { if(size == 5 && strncmp((const char*)data, "hello", 5) == 0) gotData1 = true; @@ -26,10 +37,10 @@ int main() return true; }); - sibs::BootstrapConnection connection2(sibs::Ipv4("127.0.0.1", PORT)); + std::unique_ptr<sibs::BootstrapConnection> connection2 = sibs::BootstrapConnection::create(sibs::Ipv4("127.0.0.1", PORT)).get(); bool gotData2 = false; bool gotAsdf2 = false; - connection2.listen(key, [&gotData2, &gotAsdf2](const sibs::DirectConnectionPeer *peer, const void *data, const sibs::usize size) + connection2->listen(key, [&gotData2, &gotAsdf2](const sibs::DirectConnectionPeer *peer, const void *data, const sibs::usize size) { if(size == 5 && strncmp((const char*)data, "hello", 5) == 0) gotData2 = true; @@ -39,7 +50,7 @@ int main() }); bool gotListen = false; - connection1.listen(key2, [&gotListen](const sibs::DirectConnectionPeer *peer, const void *data, const sibs::usize size) + connection1->listen(key2, [&gotListen](const sibs::DirectConnectionPeer *peer, const void *data, const sibs::usize size) { if(size == 14 && strncmp((const char*)data, "secondListener", 14) == 0) gotListen = true; @@ -47,16 +58,16 @@ int main() }); bool gotListen2 = false; - connection2.listen(key2, [&gotListen2](const sibs::DirectConnectionPeer *peer, const void *data, const sibs::usize size) + connection2->listen(key2, [&gotListen2](const sibs::DirectConnectionPeer *peer, const void *data, const sibs::usize size) { if(size == 14 && strncmp((const char*)data, "secondListener", 14) == 0) gotListen2 = true; return true; }); - connection1.put(key, "hello", 5); - connection2.put(key, "asdf", 4); - connection1.put(key2, "secondListener", 14); + connection1->put(key, "hello", 5); + connection2->put(key, "asdf", 4); + connection1->put(key2, "secondListener", 14); std::this_thread::sleep_for(std::chrono::seconds(6)); REQUIRE(gotData1); |