2 * Copyright (C) 2005-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
9 #include "utils/EndianSwap.h"
11 #include <gtest/gtest.h>
13 TEST(TestEndianSwap
, Endian_Swap16
)
17 var
= Endian_Swap16(0xFF00);
21 TEST(TestEndianSwap
, Endian_Swap32
)
25 var
= Endian_Swap32(0xFF00FF00);
29 TEST(TestEndianSwap
, Endian_Swap64
)
32 ref
= UINT64_C(0x00FF00FF00FF00FF);
33 var
= Endian_Swap64(UINT64_C(0xFF00FF00FF00FF00));
37 #ifndef WORDS_BIGENDIAN
38 TEST(TestEndianSwap
, Endian_SwapLE16
)
42 var
= Endian_SwapLE16(0x00FF);
46 TEST(TestEndianSwap
, Endian_SwapLE32
)
50 var
= Endian_SwapLE32(0x00FF00FF);
54 TEST(TestEndianSwap
, Endian_SwapLE64
)
57 ref
= UINT64_C(0x00FF00FF00FF00FF);
58 var
= Endian_SwapLE64(UINT64_C(0x00FF00FF00FF00FF));
62 TEST(TestEndianSwap
, Endian_SwapBE16
)
66 var
= Endian_SwapBE16(0xFF00);
70 TEST(TestEndianSwap
, Endian_SwapBE32
)
74 var
= Endian_SwapBE32(0xFF00FF00);
78 TEST(TestEndianSwap
, Endian_SwapBE64
)
81 ref
= UINT64_C(0x00FF00FF00FF00FF);
82 var
= Endian_SwapBE64(UINT64_C(0xFF00FF00FF00FF00));
86 TEST(TestEndianSwap
, Endian_SwapLE16
)
90 var
= Endian_SwapLE16(0xFF00);
94 TEST(TestEndianSwap
, Endian_SwapLE32
)
98 var
= Endian_SwapLE32(0xFF00FF00);
102 TEST(TestEndianSwap
, Endian_SwapLE64
)
105 ref
= UINT64_C(0x00FF00FF00FF00FF);
106 var
= Endian_SwapLE64(UINT64_C(0xFF00FF00FF00FF00));
110 TEST(TestEndianSwap
, Endian_SwapBE16
)
114 var
= Endian_SwapBE16(0x00FF);
118 TEST(TestEndianSwap
, Endian_SwapBE32
)
122 var
= Endian_SwapBE32(0x00FF00FF);
126 TEST(TestEndianSwap
, Endian_SwapBE64
)
129 ref
= UINT64_C(0x00FF00FF00FF00FF);
130 var
= Endian_SwapBE64(UINT64_C(0x00FF00FF00FF00FF));