| 1884 | } |
| 1885 | |
| 1886 | void 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); |
nothing calls this directly
no test coverage detected