コード例 #1
0
BOOST_FIXTURE_TEST_CASE( only_one_transmitbuffer_entry_allocatable, running_mode )
{
    max_tx_size( 100 );

    auto write1 = allocate_transmit_buffer();
    write1.buffer[ 0 ] = 0;
    write1.buffer[ 1 ] = 98;
    commit_transmit_buffer( write1 );

    auto write2 = allocate_transmit_buffer();
    BOOST_CHECK_EQUAL( write2.size, 0u );
}
コード例 #2
0
BOOST_FIXTURE_TEST_CASE( getting_an_empty_pdu_must_not_result_in_changing_allocated_transmit_buffer, running_mode )
{
    auto trans = allocate_transmit_buffer();
    std::fill( trans.buffer, trans.buffer + trans.size, 0x22 );

    // this call should not change the allocated buffer
    next_transmit();

    BOOST_CHECK( std::find_if( trans.buffer, trans.buffer + trans.size, []( std::uint8_t b ) { return b != 0x22; } ) == trans.buffer + trans.size );
}
コード例 #3
0
    void transmit_pdu( Iter begin, Iter end )
    {
        const std::size_t size = std::distance( begin, end );

        auto buffer = allocate_transmit_buffer( size + 2 );
        assert( buffer.size == size +2 );

        buffer.buffer[ 0 ] = 1;
        buffer.buffer[ 1 ] = size;
        std::copy( begin, end, &buffer.buffer[ 2 ] );

        commit_transmit_buffer( buffer );
    }
コード例 #4
0
BOOST_FIXTURE_TEST_CASE( an_allocated_transmit_buffer_must_be_max_tx_in_size, running_mode )
{
    const auto pdu = allocate_transmit_buffer();
    BOOST_CHECK_EQUAL( pdu.size, max_tx_size() );
}
コード例 #5
0
ファイル: buffer.hpp プロジェクト: bobvodka/bluetoe
 read_buffer ll_data_pdu_buffer< TransmitSize, ReceiveSize, Radio >::allocate_transmit_buffer()
 {
     return allocate_transmit_buffer( max_tx_size_ );
 }