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

Function test_3_arg_const_buffer_write

test/write.cpp:412–592  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

410};
411
412void test_3_arg_const_buffer_write()
413{
414 boost::asio::io_context ioc;
415 test_stream s(ioc);
416 boost::asio::const_buffer buffers
417 = boost::asio::buffer(write_data, sizeof(write_data));
418
419 s.reset();
420 size_t bytes_transferred = boost::asio::write(s, buffers,
421 boost::asio::transfer_all());
422 BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data));
423 BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data)));
424
425 s.reset();
426 s.next_write_length(1);
427 bytes_transferred = boost::asio::write(s, buffers,
428 boost::asio::transfer_all());
429 BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data));
430 BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data)));
431
432 s.reset();
433 s.next_write_length(10);
434 bytes_transferred = boost::asio::write(s, buffers,
435 boost::asio::transfer_all());
436 BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data));
437 BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data)));
438
439 s.reset();
440 bytes_transferred = boost::asio::write(s, buffers,
441 boost::asio::transfer_at_least(1));
442 BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data));
443 BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data)));
444
445 s.reset();
446 s.next_write_length(1);
447 bytes_transferred = boost::asio::write(s, buffers,
448 boost::asio::transfer_at_least(1));
449 BOOST_ASIO_CHECK(bytes_transferred == 1);
450 BOOST_ASIO_CHECK(s.check_buffers(buffers, 1));
451
452 s.reset();
453 s.next_write_length(10);
454 bytes_transferred = boost::asio::write(s, buffers,
455 boost::asio::transfer_at_least(1));
456 BOOST_ASIO_CHECK(bytes_transferred == 10);
457 BOOST_ASIO_CHECK(s.check_buffers(buffers, 10));
458
459 s.reset();
460 bytes_transferred = boost::asio::write(s, buffers,
461 boost::asio::transfer_at_least(10));
462 BOOST_ASIO_CHECK(bytes_transferred == sizeof(write_data));
463 BOOST_ASIO_CHECK(s.check_buffers(buffers, sizeof(write_data)));
464
465 s.reset();
466 s.next_write_length(1);
467 bytes_transferred = boost::asio::write(s, buffers,
468 boost::asio::transfer_at_least(10));
469 BOOST_ASIO_CHECK(bytes_transferred == 10);

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