| 1645 | } |
| 1646 | |
| 1647 | void test_4_arg_vector_buffers_write() |
| 1648 | { |
| 1649 | boost::asio::io_context ioc; |
| 1650 | test_stream s(ioc); |
| 1651 | std::vector<boost::asio::const_buffer> buffers; |
| 1652 | buffers.push_back(boost::asio::buffer(write_data, 32)); |
| 1653 | buffers.push_back(boost::asio::buffer(write_data, 39) + 32); |
| 1654 | buffers.push_back(boost::asio::buffer(write_data) + 39); |
| 1655 | |
| 1656 | s.reset(); |
| 1657 | boost::system::error_code error; |
| 1658 | size_t bytes_transferred = boost::asio::write(s, buffers, |
| 1659 | boost::asio::transfer_all(), error); |
| 1660 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 1661 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 1662 | BOOST_ASIO_CHECK(!error); |
| 1663 | |
| 1664 | s.reset(); |
| 1665 | s.next_write_length(1); |
| 1666 | error = boost::system::error_code(); |
| 1667 | bytes_transferred = boost::asio::write(s, buffers, |
| 1668 | boost::asio::transfer_all(), error); |
| 1669 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 1670 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 1671 | BOOST_ASIO_CHECK(!error); |
| 1672 | |
| 1673 | s.reset(); |
| 1674 | s.next_write_length(10); |
| 1675 | error = boost::system::error_code(); |
| 1676 | bytes_transferred = boost::asio::write(s, buffers, |
| 1677 | boost::asio::transfer_all(), error); |
| 1678 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 1679 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 1680 | BOOST_ASIO_CHECK(!error); |
| 1681 | |
| 1682 | s.reset(); |
| 1683 | error = boost::system::error_code(); |
| 1684 | bytes_transferred = boost::asio::write(s, buffers, |
| 1685 | boost::asio::transfer_at_least(1), error); |
| 1686 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 1687 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 1688 | BOOST_ASIO_CHECK(!error); |
| 1689 | |
| 1690 | s.reset(); |
| 1691 | s.next_write_length(1); |
| 1692 | error = boost::system::error_code(); |
| 1693 | bytes_transferred = boost::asio::write(s, buffers, |
| 1694 | boost::asio::transfer_at_least(1), error); |
| 1695 | BOOST_ASIO_CHECK(bytes_transferred == 1); |
| 1696 | BOOST_ASIO_CHECK(s.check_buffers(buffers, 1)); |
| 1697 | BOOST_ASIO_CHECK(!error); |
| 1698 | |
| 1699 | s.reset(); |
| 1700 | s.next_write_length(10); |
| 1701 | error = boost::system::error_code(); |
| 1702 | bytes_transferred = boost::asio::write(s, buffers, |
| 1703 | boost::asio::transfer_at_least(1), error); |
| 1704 | BOOST_ASIO_CHECK(bytes_transferred == 10); |
nothing calls this directly
no test coverage detected