Commit 3694f195 authored by Jakob Otto's avatar Jakob Otto

Fix udp_datagram_socket test

parent fd2f5137
...@@ -77,13 +77,17 @@ struct fixture : host_fixture { ...@@ -77,13 +77,17 @@ struct fixture : host_fixture {
else else
CAF_FAIL("write returned an error: " << sys.render(get<sec>(write_ret))); CAF_FAIL("write returned an error: " << sys.render(get<sec>(write_ret)));
auto read_ret = read(receive_socket, make_span(buf)); variant<std::pair<size_t, ip_endpoint>, sec> read_ret;
if (auto read_res = get_if<std::pair<size_t, ip_endpoint>>(&read_ret)) { do {
CAF_CHECK_EQUAL(read_res->first, hello_test.size()); read_ret = read(receive_socket, make_span(buf));
buf.resize(read_res->first); if (auto read_res = get_if<std::pair<size_t, ip_endpoint>>(&read_ret)) {
} else { CAF_CHECK_EQUAL(read_res->first, hello_test.size());
CAF_FAIL("write returned an error: " << sys.render(get<sec>(read_ret))); buf.resize(read_res->first);
} } else if (get<sec>(read_ret) != sec::unavailable_or_would_block) {
CAF_FAIL("read returned an error: " << sys.render(get<sec>(read_ret)));
}
} while (holds_alternative<sec>(read_ret)
&& get<sec>(read_ret) == sec::unavailable_or_would_block);
string_view buf_view{reinterpret_cast<const char*>(buf.data()), buf.size()}; string_view buf_view{reinterpret_cast<const char*>(buf.data()), buf.size()};
CAF_CHECK_EQUAL(buf_view, hello_test); CAF_CHECK_EQUAL(buf_view, hello_test);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment