diff options
Diffstat (limited to 'host/test')
-rw-r--r-- | host/test/CMakeLists.txt | 1 | ||||
-rw-r--r-- | host/test/byteswap_test.cpp | 39 | ||||
-rw-r--r-- | host/test/vrt_test.cpp | 4 |
3 files changed, 42 insertions, 2 deletions
diff --git a/host/test/CMakeLists.txt b/host/test/CMakeLists.txt index 24778d13e..7fd3dd401 100644 --- a/host/test/CMakeLists.txt +++ b/host/test/CMakeLists.txt @@ -22,6 +22,7 @@ ADD_EXECUTABLE(main_test main_test.cpp addr_test.cpp buffer_test.cpp + byteswap_test.cpp dict_test.cpp error_test.cpp gain_handler_test.cpp diff --git a/host/test/byteswap_test.cpp b/host/test/byteswap_test.cpp new file mode 100644 index 000000000..3d50c9bfa --- /dev/null +++ b/host/test/byteswap_test.cpp @@ -0,0 +1,39 @@ +// +// Copyright 2010 Ettus Research LLC +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see <http://www.gnu.org/licenses/>. +// + +#include <boost/test/unit_test.hpp> +#include <uhd/utils/byteswap.hpp> + +BOOST_AUTO_TEST_CASE(test_byteswap16){ + boost::uint16_t x = 0x0123; + boost::uint16_t y = 0x2301; + BOOST_CHECK_EQUAL(uhd::byteswap(x), y); +} + +BOOST_AUTO_TEST_CASE(test_byteswap32){ + boost::uint32_t x = 0x01234567; + boost::uint32_t y = 0x67452301; + BOOST_CHECK_EQUAL(uhd::byteswap(x), y); +} + +BOOST_AUTO_TEST_CASE(test_byteswap64){ + //split up 64 bit constants to avoid long-long compiler warnings + boost::uint64_t x = 0x01234567 | (boost::uint64_t(0x89abcdef) << 32); + boost::uint64_t y = 0xefcdab89 | (boost::uint64_t(0x67452301) << 32); + BOOST_CHECK_EQUAL(uhd::byteswap(x), y); +} + diff --git a/host/test/vrt_test.cpp b/host/test/vrt_test.cpp index 939a61eb4..3e596164c 100644 --- a/host/test/vrt_test.cpp +++ b/host/test/vrt_test.cpp @@ -30,7 +30,7 @@ static void pack_and_unpack( size_t num_packet_words32; //pack metadata into a vrt header - vrt::pack( + vrt::pack_be( metadata, //input header_buff, //output num_header_words32, //output @@ -46,7 +46,7 @@ static void pack_and_unpack( size_t packet_count_out; //unpack the vrt header back into metadata - vrt::unpack( + vrt::unpack_be( metadata_out, //output header_buff, //input num_header_words32_out, //output |