read_at.cpp
来自「Boost provides free peer-reviewed portab」· C++ 代码 · 共 1,467 行 · 第 1/4 页
CPP
1,467 行
BOOST_CHECK(s.check(0, buffers, 42)); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(42)); BOOST_CHECK(bytes_transferred == 42); BOOST_CHECK(s.check(1234, buffers, 42)); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(42)); BOOST_CHECK(bytes_transferred == 50); BOOST_CHECK(s.check(0, buffers, 50)); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(42)); BOOST_CHECK(bytes_transferred == 50); BOOST_CHECK(s.check(1234, buffers, 50)); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 0, buffers, old_style_transfer_all); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, old_style_transfer_all); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 0, buffers, old_style_transfer_all); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, old_style_transfer_all); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 0, buffers, old_style_transfer_all); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, old_style_transfer_all); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 0, buffers, short_transfer); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, short_transfer); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 0, buffers, short_transfer); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, short_transfer); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 0, buffers, short_transfer); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, short_transfer); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data)));}void test_5_arg_read_at(){ boost::asio::io_service ios; test_random_access_device s(ios); char read_buf[sizeof(read_data)]; boost::asio::mutable_buffers_1 buffers = boost::asio::buffer(read_buf, sizeof(read_buf)); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); boost::system::error_code error; size_t bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_all(), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_all(), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_all(), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_all(), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_all(), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_all(), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(1), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(1), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(1), error); BOOST_CHECK(bytes_transferred == 1); BOOST_CHECK(s.check(0, buffers, 1)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(1), error); BOOST_CHECK(bytes_transferred == 1); BOOST_CHECK(s.check(1234, buffers, 1)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(1), error); BOOST_CHECK(bytes_transferred == 10); BOOST_CHECK(s.check(0, buffers, 10)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(1), error); BOOST_CHECK(bytes_transferred == 10); BOOST_CHECK(s.check(1234, buffers, 10)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(10), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(10), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(10), error); BOOST_CHECK(bytes_transferred == 10); BOOST_CHECK(s.check(0, buffers, 10)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(10), error); BOOST_CHECK(bytes_transferred == 10); BOOST_CHECK(s.check(1234, buffers, 10)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(10), error); BOOST_CHECK(bytes_transferred == 10); BOOST_CHECK(s.check(0, buffers, 10)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(10), error); BOOST_CHECK(bytes_transferred == 10); BOOST_CHECK(s.check(1234, buffers, 10)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(42), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(42), error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(42), error); BOOST_CHECK(bytes_transferred == 42); BOOST_CHECK(s.check(0, buffers, 42)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(1); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(42), error); BOOST_CHECK(bytes_transferred == 42); BOOST_CHECK(s.check(1234, buffers, 42)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 0, buffers, boost::asio::transfer_at_least(42), error); BOOST_CHECK(bytes_transferred == 50); BOOST_CHECK(s.check(0, buffers, 50)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); s.next_read_length(10); memset(read_buf, 0, sizeof(read_buf)); error = boost::system::error_code(); bytes_transferred = boost::asio::read_at(s, 1234, buffers, boost::asio::transfer_at_least(42), error); BOOST_CHECK(bytes_transferred == 50); BOOST_CHECK(s.check(1234, buffers, 50)); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 0, buffers, old_style_transfer_all, error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(0, buffers, sizeof(read_data))); BOOST_CHECK(!error); s.reset(read_data, sizeof(read_data)); memset(read_buf, 0, sizeof(read_buf)); bytes_transferred = boost::asio::read_at(s, 1234, buffers, old_style_transfer_all, error); BOOST_CHECK(bytes_transferred == sizeof(read_data)); BOOST_CHECK(s.check(1234, buffers, sizeof(read_data))); BOOST_CHECK(!error);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?