The first test, and support file for it and future tests

This was SVN commit r3958.
This commit is contained in:
Simon Brenner 2006-06-07 02:30:47 +00:00
parent 0ecb2dad1e
commit 570c248b92
2 changed files with 36 additions and 15 deletions

View File

@ -1,33 +1,37 @@
#include "lib/precompiled.h"
#include <lib/byte_order.h>
#include <cxxtest/TestSuite.h>
class TestByteOrder : public CxxTest::TestSuite
{
public:
void test()
void test_()
{
const u32 x = 0x01234567u;
const u8 LS_byte = *(u8*)&x;
// little endian
if(LS_byte, 0x67)
if(LS_byte == 0x67)
{
TS_ASSERT_EQUAL(to_le16(0x0123u), 0x0123u);
TS_ASSERT_EQUAL(to_le32(0x01234567u), 0x01234567u);
TS_ASSERT_EQUAL(to_le64(0x0123456789ABCDEFu), 0x0123456789ABCDEFu);
TS_ASSERT_EQUALS(to_le16(0x0123u), 0x0123u);
TS_ASSERT_EQUALS(to_le32(0x01234567u), 0x01234567u);
TS_ASSERT_EQUALS(to_le64(0x0123456789ABCDEFULL), 0x0123456789ABCDEFULL);
TS_ASSERT_EQUAL(to_be16(0x0123u), 0x2301u);
TS_ASSERT_EQUAL(to_be32(0x01234567u), 0x67452301u);
TS_ASSERT_EQUAL(to_be64(0x0123456789ABCDEFu), 0xEFCDAB8967452301u);
TS_ASSERT_EQUALS(to_be16(0x0123u), 0x2301u);
TS_ASSERT_EQUALS(to_be32(0x01234567u), 0x67452301u);
TS_ASSERT_EQUALS(to_be64(0x0123456789ABCDEFull), 0xEFCDAB8967452301ull);
}
// big endian
else if(LS_byte, 0x01)
else if(LS_byte == 0x01)
{
TS_ASSERT_EQUAL(to_le16(0x0123u), 0x2301u);
TS_ASSERT_EQUAL(to_le32(0x01234567u), 0x67452301u);
TS_ASSERT_EQUAL(to_le64(0x0123456789ABCDEFu), 0xEFCDAB8967452301u);
TS_ASSERT_EQUALS(to_le16(0x0123u), 0x2301u);
TS_ASSERT_EQUALS(to_le32(0x01234567u), 0x67452301u);
TS_ASSERT_EQUALS(to_le64(0x0123456789ABCDEFull), 0xEFCDAB8967452301ull);
TS_ASSERT_EQUAL(to_be16(0x0123u), 0x0123u);
TS_ASSERT_EQUAL(to_be32(0x01234567u), 0x01234567u);
TS_ASSERT_EQUAL(to_be64(0x0123456789ABCDEFu), 0x0123456789ABCDEFu);
TS_ASSERT_EQUALS(to_be16(0x0123u), 0x0123u);
TS_ASSERT_EQUALS(to_be32(0x01234567u), 0x01234567u);
TS_ASSERT_EQUALS(to_be64(0x0123456789ABCDEFull), 0x0123456789ABCDEFull);
}
else
TS_FAIL("endian determination failed");

17
source/test_root.cpp Normal file
View File

@ -0,0 +1,17 @@
/* Generated file, do not edit */
#ifndef CXXTEST_RUNNING
#define CXXTEST_RUNNING
#endif
#define _CXXTEST_HAVE_STD
#include <cxxtest/TestListener.h>
#include <cxxtest/TestTracker.h>
#include <cxxtest/TestRunner.h>
#include <cxxtest/RealDescriptions.h>
#include <cxxtest/ErrorPrinter.h>
int main() {
return CxxTest::ErrorPrinter().run();
}
#include <cxxtest/Root.cpp>