47 lines
942 B
C++
47 lines
942 B
C++
|
// Copyright 2014 Dolphin Emulator Project
|
||
|
// Licensed under GPLv2
|
||
|
// Refer to the license.txt file included.
|
||
|
|
||
|
#include <gtest/gtest.h>
|
||
|
|
||
|
#include "Common/CommonFuncs.h"
|
||
|
|
||
|
TEST(CommonFuncs, ArraySizeMacro)
|
||
|
{
|
||
|
char test[4];
|
||
|
u32 test2[42];
|
||
|
|
||
|
EXPECT_EQ(4, ArraySize(test));
|
||
|
EXPECT_EQ(42, ArraySize(test2));
|
||
|
}
|
||
|
|
||
|
TEST(CommonFuncs, RoundUpPow2Macro)
|
||
|
{
|
||
|
EXPECT_EQ(4, ROUND_UP_POW2(3));
|
||
|
EXPECT_EQ(4, ROUND_UP_POW2(4));
|
||
|
EXPECT_EQ(8, ROUND_UP_POW2(6));
|
||
|
EXPECT_EQ(0x40000000, ROUND_UP_POW2(0x23456789));
|
||
|
}
|
||
|
|
||
|
TEST(CommonFuncs, CrashMacro)
|
||
|
{
|
||
|
EXPECT_DEATH({ Crash(); }, "");
|
||
|
}
|
||
|
|
||
|
TEST(CommonFuncs, MinMax)
|
||
|
{
|
||
|
EXPECT_EQ(4, min(4, 5));
|
||
|
EXPECT_EQ(-1, min(-1, 1));
|
||
|
|
||
|
EXPECT_EQ(5, max(4, 5));
|
||
|
EXPECT_EQ(1, max(-1, 1));
|
||
|
}
|
||
|
|
||
|
TEST(CommonFuncs, Swap)
|
||
|
{
|
||
|
EXPECT_EQ(0xf0, Common::swap8(0xf0));
|
||
|
EXPECT_EQ(0x1234, Common::swap16(0x3412));
|
||
|
EXPECT_EQ(0x12345678, Common::swap32(0x78563412));
|
||
|
EXPECT_EQ(0x123456789abcdef0ull, Common::swap64(0xf0debc9a78563412ull));
|
||
|
}
|