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

Function test_4_arg_dynamic_string_write

test/write.cpp:1886–2152  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1884}
1885
1886void test_4_arg_dynamic_string_write()
1887{
1888 boost::asio::io_context ioc;
1889 test_stream s(ioc);
1890 std::string data;
1891 boost::asio::dynamic_string_buffer<char, std::string::traits_type,
1892 std::string::allocator_type> sb
1893 = boost::asio::dynamic_buffer(data, sizeof(write_data));
1894 boost::asio::const_buffer buffers
1895 = boost::asio::buffer(write_data, sizeof(write_data));
1896
1897 s.reset();
1898 data.assign(write_data, sizeof(write_data));
1899 boost::system::error_code error;
1900 size_t bytes_transferred = boost::asio::write(s, sb,
1901 boost::asio::transfer_all(), error);
1902 BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data));
1903 BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data)));
1904 BOOST_ASIO_CHECK(!error);
1905
1906 s.reset();
1907 data.assign(write_data, sizeof(write_data));
1908 s.next_write_length(1);
1909 error = boost::system::error_code();
1910 bytes_transferred = boost::asio::write(s, sb,
1911 boost::asio::transfer_all(), error);
1912 BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data));
1913 BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data)));
1914 BOOST_ASIO_CHECK(!error);
1915
1916 s.reset();
1917 data.assign(write_data, sizeof(write_data));
1918 s.next_write_length(10);
1919 error = boost::system::error_code();
1920 bytes_transferred = boost::asio::write(s, sb,
1921 boost::asio::transfer_all(), error);
1922 BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data));
1923 BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data)));
1924 BOOST_ASIO_CHECK(!error);
1925
1926 s.reset();
1927 data.assign(write_data, sizeof(write_data));
1928 error = boost::system::error_code();
1929 bytes_transferred = boost::asio::write(s, sb,
1930 boost::asio::transfer_at_least(1), error);
1931 BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data));
1932 BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data)));
1933 BOOST_ASIO_CHECK(!error);
1934
1935 s.reset();
1936 data.assign(write_data, sizeof(write_data));
1937 s.next_write_length(1);
1938 error = boost::system::error_code();
1939 bytes_transferred = boost::asio::write(s, sb,
1940 boost::asio::transfer_at_least(1), error);
1941 BOOST_ASIO_CHECK(bytes_transferred == 1);
1942 BOOST_ASIO_CHECK(s.check_buffers(buffers, 1));
1943 BOOST_ASIO_CHECK(!error);

Callers

nothing calls this directly

Calls 10

bufferFunction · 0.85
writeFunction · 0.85
transfer_at_leastFunction · 0.85
transfer_exactlyFunction · 0.85
short_transferClass · 0.70
transfer_allClass · 0.50
resetMethod · 0.45
assignMethod · 0.45
check_buffersMethod · 0.45
next_write_lengthMethod · 0.45

Tested by

no test coverage detected