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

Function test_3_arg_vector_buffers_write

test/write.cpp:776–958  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

774}
775
776void 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,

Callers

nothing calls this directly

Calls 9

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
check_buffersMethod · 0.45
next_write_lengthMethod · 0.45

Tested by

no test coverage detected