/* * Copyright (C) 2005-2018 Team Kodi * This file is part of Kodi - https://kodi.tv * * SPDX-License-Identifier: GPL-2.0-or-later * See LICENSES/README.md for more information. */ #include "utils/EndianSwap.h" #include TEST(TestEndianSwap, Endian_Swap16) { uint16_t ref, var; ref = 0x00FF; var = Endian_Swap16(0xFF00); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_Swap32) { uint32_t ref, var; ref = 0x00FF00FF; var = Endian_Swap32(0xFF00FF00); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_Swap64) { uint64_t ref, var; ref = UINT64_C(0x00FF00FF00FF00FF); var = Endian_Swap64(UINT64_C(0xFF00FF00FF00FF00)); EXPECT_EQ(ref, var); } #ifndef WORDS_BIGENDIAN TEST(TestEndianSwap, Endian_SwapLE16) { uint16_t ref, var; ref = 0x00FF; var = Endian_SwapLE16(0x00FF); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapLE32) { uint32_t ref, var; ref = 0x00FF00FF; var = Endian_SwapLE32(0x00FF00FF); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapLE64) { uint64_t ref, var; ref = UINT64_C(0x00FF00FF00FF00FF); var = Endian_SwapLE64(UINT64_C(0x00FF00FF00FF00FF)); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapBE16) { uint16_t ref, var; ref = 0x00FF; var = Endian_SwapBE16(0xFF00); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapBE32) { uint32_t ref, var; ref = 0x00FF00FF; var = Endian_SwapBE32(0xFF00FF00); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapBE64) { uint64_t ref, var; ref = UINT64_C(0x00FF00FF00FF00FF); var = Endian_SwapBE64(UINT64_C(0xFF00FF00FF00FF00)); EXPECT_EQ(ref, var); } #else TEST(TestEndianSwap, Endian_SwapLE16) { uint16_t ref, var; ref = 0x00FF; var = Endian_SwapLE16(0xFF00); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapLE32) { uint32_t ref, var; ref = 0x00FF00FF; var = Endian_SwapLE32(0xFF00FF00); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapLE64) { uint64_t ref, var; ref = UINT64_C(0x00FF00FF00FF00FF); var = Endian_SwapLE64(UINT64_C(0xFF00FF00FF00FF00)); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapBE16) { uint16_t ref, var; ref = 0x00FF; var = Endian_SwapBE16(0x00FF); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapBE32) { uint32_t ref, var; ref = 0x00FF00FF; var = Endian_SwapBE32(0x00FF00FF); EXPECT_EQ(ref, var); } TEST(TestEndianSwap, Endian_SwapBE64) { uint64_t ref, var; ref = UINT64_C(0x00FF00FF00FF00FF); var = Endian_SwapBE64(UINT64_C(0x00FF00FF00FF00FF)); EXPECT_EQ(ref, var); } #endif