From: bert hubert Date: Sun, 14 Jul 2013 18:24:04 +0000 (+0200) Subject: add unit test to check if we detected byte order correctly X-Git-Tag: auth-3.3.1~44 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c271ff3552d6cbb3c6584ef59286d96be7e20c9a;p=thirdparty%2Fpdns.git add unit test to check if we detected byte order correctly --- diff --git a/pdns/test-misc_hh.cc b/pdns/test-misc_hh.cc index b8e94bf5a7..d50201e651 100644 --- a/pdns/test-misc_hh.cc +++ b/pdns/test-misc_hh.cc @@ -3,6 +3,7 @@ #include #include "misc.hh" +#include "dns.hh" #include using std::string; @@ -67,6 +68,17 @@ BOOST_AUTO_TEST_CASE(test_AtomicCounter) { BOOST_CHECK_EQUAL(ac, 2); } +BOOST_AUTO_TEST_CASE(test_endianness) { + uint32_t i = 1; +#if BYTE_ORDER == BIG_ENDIAN + BOOST_CHECK_EQUAL(i, htonl(i)); +#elif BYTE_ORDER == LITTLE_ENDIAN + uint32_t j=0x01000000; + BOOST_CHECK_EQUAL(i, ntohl(j)); +#else + BOOST_FAIL("Did not detect endianness at all"); +#endif +} BOOST_AUTO_TEST_CASE(test_parseService) { ServiceTuple tp;