MCPcopy Create free account
hub / github.com/boostorg/asio / test_3_arg_nothrow_dynamic_string_read

Function test_3_arg_nothrow_dynamic_string_read

test/read.cpp:352–387  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

350}
351
352void test_3_arg_nothrow_dynamic_string_read()
353{
354 boost::asio::io_context ioc;
355 test_stream s(ioc);
356 std::string data;
357 boost::asio::dynamic_string_buffer<char, std::string::traits_type,
358 std::string::allocator_type> sb
359 = boost::asio::dynamic_buffer(data, sizeof(read_data));
360
361 s.reset(read_data, sizeof(read_data));
362 sb.consume(sb.size());
363 boost::system::error_code error;
364 size_t bytes_transferred = boost::asio::read(s, sb, error);
365 BOOST_ASIO_CHECK(bytes_transferred == sizeof(read_data));
366 BOOST_ASIO_CHECK(sb.size() == sizeof(read_data));
367 BOOST_ASIO_CHECK(s.check_buffers(sb.data(0, sb.size()), sizeof(read_data)));
368 BOOST_ASIO_CHECK(!error);
369
370 s.reset(read_data, sizeof(read_data));
371 s.next_read_length(1);
372 sb.consume(sb.size());
373 bytes_transferred = boost::asio::read(s, sb, error);
374 BOOST_ASIO_CHECK(bytes_transferred == sizeof(read_data));
375 BOOST_ASIO_CHECK(sb.size() == sizeof(read_data));
376 BOOST_ASIO_CHECK(s.check_buffers(sb.data(0, sb.size()), sizeof(read_data)));
377 BOOST_ASIO_CHECK(!error);
378
379 s.reset(read_data, sizeof(read_data));
380 s.next_read_length(10);
381 sb.consume(sb.size());
382 bytes_transferred = boost::asio::read(s, sb, error);
383 BOOST_ASIO_CHECK(bytes_transferred == sizeof(read_data));
384 BOOST_ASIO_CHECK(sb.size() == sizeof(read_data));
385 BOOST_ASIO_CHECK(s.check_buffers(sb.data(0, sb.size()), sizeof(read_data)));
386 BOOST_ASIO_CHECK(!error);
387}
388
389void test_3_arg_nothrow_streambuf_read()
390{

Callers

nothing calls this directly

Calls 7

readFunction · 0.85
resetMethod · 0.45
consumeMethod · 0.45
sizeMethod · 0.45
check_buffersMethod · 0.45
dataMethod · 0.45
next_read_lengthMethod · 0.45

Tested by

no test coverage detected