| 774 | } |
| 775 | |
| 776 | void test_3_arg_vector_buffers_write() |
| 777 | { |
| 778 | boost::asio::io_context ioc; |
| 779 | test_stream s(ioc); |
| 780 | std::vector<boost::asio::const_buffer> buffers; |
| 781 | buffers.push_back(boost::asio::buffer(write_data, 32)); |
| 782 | buffers.push_back(boost::asio::buffer(write_data, 39) + 32); |
| 783 | buffers.push_back(boost::asio::buffer(write_data) + 39); |
| 784 | |
| 785 | s.reset(); |
| 786 | size_t bytes_transferred = boost::asio::write(s, buffers, |
| 787 | boost::asio::transfer_all()); |
| 788 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 789 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 790 | |
| 791 | s.reset(); |
| 792 | s.next_write_length(1); |
| 793 | bytes_transferred = boost::asio::write(s, buffers, |
| 794 | boost::asio::transfer_all()); |
| 795 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 796 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 797 | |
| 798 | s.reset(); |
| 799 | s.next_write_length(10); |
| 800 | bytes_transferred = boost::asio::write(s, buffers, |
| 801 | boost::asio::transfer_all()); |
| 802 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 803 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 804 | |
| 805 | s.reset(); |
| 806 | bytes_transferred = boost::asio::write(s, buffers, |
| 807 | boost::asio::transfer_at_least(1)); |
| 808 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 809 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 810 | |
| 811 | s.reset(); |
| 812 | s.next_write_length(1); |
| 813 | bytes_transferred = boost::asio::write(s, buffers, |
| 814 | boost::asio::transfer_at_least(1)); |
| 815 | BOOST_ASIO_CHECK(bytes_transferred == 1); |
| 816 | BOOST_ASIO_CHECK(s.check_buffers(buffers, 1)); |
| 817 | |
| 818 | s.reset(); |
| 819 | s.next_write_length(10); |
| 820 | bytes_transferred = boost::asio::write(s, buffers, |
| 821 | boost::asio::transfer_at_least(1)); |
| 822 | BOOST_ASIO_CHECK(bytes_transferred == 10); |
| 823 | BOOST_ASIO_CHECK(s.check_buffers(buffers, 10)); |
| 824 | |
| 825 | s.reset(); |
| 826 | bytes_transferred = boost::asio::write(s, buffers, |
| 827 | boost::asio::transfer_at_least(10)); |
| 828 | BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data)); |
| 829 | BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data))); |
| 830 | |
| 831 | s.reset(); |
| 832 | s.next_write_length(1); |
| 833 | bytes_transferred = boost::asio::write(s, buffers, |
nothing calls this directly
no test coverage detected