| 1171 | } |
| 1172 | |
| 1173 | void test_4_arg_const_buffer_write() |
| 1174 | { |
| 1175 | boost::asio::io_context ioc; |
| 1176 | test_stream s(ioc); |
| 1177 | boost::asio::const_buffer buffers |
| 1178 | = boost::asio::buffer(write_data, sizeof(write_data)); |
| 1179 | |
| 1180 | s.reset(); |
| 1181 | boost::system::error_code error; |
| 1182 | size_t bytes_transferred = boost::asio::write(s, buffers, |
| 1183 | boost::asio::transfer_all(), error); |
| 1184 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 1185 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 1186 | BOOST_ASIO_CHECK(!error); |
| 1187 | |
| 1188 | s.reset(); |
| 1189 | s.next_write_length(1); |
| 1190 | error = boost::system::error_code(); |
| 1191 | bytes_transferred = boost::asio::write(s, buffers, |
| 1192 | boost::asio::transfer_all(), error); |
| 1193 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 1194 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 1195 | BOOST_ASIO_CHECK(!error); |
| 1196 | |
| 1197 | s.reset(); |
| 1198 | s.next_write_length(10); |
| 1199 | error = boost::system::error_code(); |
| 1200 | bytes_transferred = boost::asio::write(s, buffers, |
| 1201 | boost::asio::transfer_all(), error); |
| 1202 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 1203 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 1204 | BOOST_ASIO_CHECK(!error); |
| 1205 | |
| 1206 | s.reset(); |
| 1207 | error = boost::system::error_code(); |
| 1208 | bytes_transferred = boost::asio::write(s, buffers, |
| 1209 | boost::asio::transfer_at_least(1), error); |
| 1210 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 1211 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 1212 | BOOST_ASIO_CHECK(!error); |
| 1213 | |
| 1214 | s.reset(); |
| 1215 | s.next_write_length(1); |
| 1216 | error = boost::system::error_code(); |
| 1217 | bytes_transferred = boost::asio::write(s, buffers, |
| 1218 | boost::asio::transfer_at_least(1), error); |
| 1219 | BOOST_ASIO_CHECK(bytes_transferred == 1); |
| 1220 | BOOST_ASIO_CHECK(s.check_buffers(buffers, 1)); |
| 1221 | BOOST_ASIO_CHECK(!error); |
| 1222 | |
| 1223 | s.reset(); |
| 1224 | s.next_write_length(10); |
| 1225 | error = boost::system::error_code(); |
| 1226 | bytes_transferred = boost::asio::write(s, buffers, |
| 1227 | boost::asio::transfer_at_least(1), error); |
| 1228 | BOOST_ASIO_CHECK(bytes_transferred == 10); |
| 1229 | BOOST_ASIO_CHECK(s.check_buffers(buffers, 10)); |
| 1230 | BOOST_ASIO_CHECK(!error); |
nothing calls this directly
no test coverage detected