From 65fc72e30a885f6adca99505ee869e010f94c1c3 Mon Sep 17 00:00:00 2001 From: Max Horn Date: Tue, 12 Apr 2011 17:23:32 +0200 Subject: [PATCH] COMMON: Add some testcases for common/endian.h --- test/common/endian.h | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 test/common/endian.h diff --git a/test/common/endian.h b/test/common/endian.h new file mode 100644 index 000000000000..cba7618c430e --- /dev/null +++ b/test/common/endian.h @@ -0,0 +1,36 @@ +#include +#include "common/endian.h" + +class EndianTestSuite : public CxxTest::TestSuite +{ + public: + void test_MKTAG() { + const char *str_tag = "ABCD"; + uint32 tag = READ_BE_UINT32(str_tag); + TS_ASSERT_EQUALS(MKTAG('A','B','C','D'), tag); + } + + void test_READ_BE_UINT32() { + const char data[4] = { 0x12, 0x34, 0x56, 0x78 }; + uint32 value = READ_BE_UINT32(data); + TS_ASSERT_EQUALS(value, 0x12345678UL); + } + + void test_READ_LE_UINT32() { + const char data[4] = { 0x12, 0x34, 0x56, 0x78 }; + uint32 value = READ_LE_UINT32(data); + TS_ASSERT_EQUALS(value, 0x78563412UL); + } + + void test_READ_BE_UINT16() { + const char data[4] = { 0x12, 0x34, 0x56, 0x78 }; + uint32 value = READ_BE_UINT16(data); + TS_ASSERT_EQUALS(value, 0x1234UL); + } + + void test_READ_LE_UINT16() { + const char data[4] = { 0x12, 0x34, 0x56, 0x78 }; + uint32 value = READ_LE_UINT16(data); + TS_ASSERT_EQUALS(value, 0x3412UL); + } +};