mirror of
https://github.com/google/cpu_features.git
synced 2025-04-27 07:02:30 +02:00
test enum macro consistency (#257)
This commit is contained in:
parent
601471d527
commit
d3c5e369db
@ -23,6 +23,18 @@ namespace {
|
||||
|
||||
void DisableHardwareCapabilities() { SetHardwareCapabilities(0, 0); }
|
||||
|
||||
TEST(CpuinfoAarch64Test, Aarch64FeaturesEnum) {
|
||||
const char *last_name = GetAarch64FeaturesEnumName(AARCH64_LAST_);
|
||||
EXPECT_STREQ(last_name, "unknown_feature");
|
||||
for (int i = static_cast<int>(AARCH64_FP); i != static_cast<int>(AARCH64_LAST_); ++i) {
|
||||
const auto feature = static_cast<Aarch64FeaturesEnum>(i);
|
||||
const char *name = GetAarch64FeaturesEnumName(feature);
|
||||
ASSERT_FALSE(name == nullptr);
|
||||
EXPECT_STRNE(name, "");
|
||||
EXPECT_STRNE(name, last_name);
|
||||
}
|
||||
}
|
||||
|
||||
TEST(CpuinfoAarch64Test, FromHardwareCap) {
|
||||
ResetHwcaps();
|
||||
SetHardwareCapabilities(AARCH64_HWCAP_FP | AARCH64_HWCAP_AES, 0);
|
||||
|
@ -21,6 +21,18 @@
|
||||
namespace cpu_features {
|
||||
namespace {
|
||||
|
||||
TEST(CpuinfoArmTest, ArmFeaturesEnum) {
|
||||
const char *last_name = GetArmFeaturesEnumName(ARM_LAST_);
|
||||
EXPECT_STREQ(last_name, "unknown_feature");
|
||||
for (int i = static_cast<int>(ARM_SWP); i != static_cast<int>(ARM_LAST_); ++i) {
|
||||
const auto feature = static_cast<ArmFeaturesEnum>(i);
|
||||
const char *name = GetArmFeaturesEnumName(feature);
|
||||
ASSERT_FALSE(name == nullptr);
|
||||
EXPECT_STRNE(name, "");
|
||||
EXPECT_STRNE(name, last_name);
|
||||
}
|
||||
}
|
||||
|
||||
TEST(CpuinfoArmTest, FromHardwareCap) {
|
||||
ResetHwcaps();
|
||||
SetHardwareCapabilities(ARM_HWCAP_NEON, ARM_HWCAP2_AES | ARM_HWCAP2_CRC32);
|
||||
|
@ -24,6 +24,18 @@ namespace cpu_features {
|
||||
|
||||
namespace {
|
||||
|
||||
TEST(CpuinfoMipsTest, MipsFeaturesEnum) {
|
||||
const char *last_name = GetMipsFeaturesEnumName(MIPS_LAST_);
|
||||
EXPECT_STREQ(last_name, "unknown_feature");
|
||||
for (int i = static_cast<int>(MIPS_MSA); i != static_cast<int>(MIPS_LAST_); ++i) {
|
||||
const auto feature = static_cast<MipsFeaturesEnum>(i);
|
||||
const char *name = GetMipsFeaturesEnumName(feature);
|
||||
ASSERT_FALSE(name == nullptr);
|
||||
EXPECT_STRNE(name, "");
|
||||
EXPECT_STRNE(name, last_name);
|
||||
}
|
||||
}
|
||||
|
||||
TEST(CpuinfoMipsTest, FromHardwareCapBoth) {
|
||||
ResetHwcaps();
|
||||
SetHardwareCapabilities(MIPS_HWCAP_MSA | MIPS_HWCAP_R6, 0);
|
||||
|
@ -22,6 +22,18 @@
|
||||
namespace cpu_features {
|
||||
namespace {
|
||||
|
||||
TEST(CpustringsPPCTest, PPCFeaturesEnum) {
|
||||
const char *last_name = GetPPCFeaturesEnumName(PPC_LAST_);
|
||||
EXPECT_STREQ(last_name, "unknown_feature");
|
||||
for (int i = static_cast<int>(PPC_32); i != static_cast<int>(PPC_LAST_); ++i) {
|
||||
const auto feature = static_cast<PPCFeaturesEnum>(i);
|
||||
const char *name = GetPPCFeaturesEnumName(feature);
|
||||
ASSERT_FALSE(name == nullptr);
|
||||
EXPECT_STRNE(name, "");
|
||||
EXPECT_STRNE(name, last_name);
|
||||
}
|
||||
}
|
||||
|
||||
TEST(CpustringsPPCTest, FromHardwareCap) {
|
||||
ResetHwcaps();
|
||||
SetHardwareCapabilities(PPC_FEATURE_HAS_FPU | PPC_FEATURE_HAS_VSX,
|
||||
|
@ -118,6 +118,30 @@ class CpuidX86Test : public ::testing::Test {
|
||||
}
|
||||
};
|
||||
|
||||
TEST_F(CpuidX86Test, X86MicroarchitectureEnum) {
|
||||
const char *last_name = GetX86MicroarchitectureName(X86_MICROARCHITECTURE_LAST_);
|
||||
EXPECT_STREQ(last_name, "unknown microarchitecture");
|
||||
for (int i = static_cast<int>(X86_UNKNOWN); i != static_cast<int>(X86_MICROARCHITECTURE_LAST_); ++i) {
|
||||
const auto micro = static_cast<X86Microarchitecture>(i);
|
||||
const char *name = GetX86MicroarchitectureName(micro);
|
||||
ASSERT_FALSE(name == nullptr);
|
||||
EXPECT_STRNE(name, "");
|
||||
EXPECT_STRNE(name, last_name);
|
||||
}
|
||||
}
|
||||
|
||||
TEST_F(CpuidX86Test, X86FeaturesEnum) {
|
||||
const char *last_name = GetX86FeaturesEnumName(X86_LAST_);
|
||||
EXPECT_STREQ(last_name, "unknown_feature");
|
||||
for (int i = static_cast<int>(X86_FPU); i != static_cast<int>(X86_LAST_); ++i) {
|
||||
const auto feature = static_cast<X86FeaturesEnum>(i);
|
||||
const char *name = GetX86FeaturesEnumName(feature);
|
||||
ASSERT_FALSE(name == nullptr);
|
||||
EXPECT_STRNE(name, "");
|
||||
EXPECT_STRNE(name, last_name);
|
||||
}
|
||||
}
|
||||
|
||||
TEST_F(CpuidX86Test, SandyBridge) {
|
||||
cpu().SetOsBackupsExtendedRegisters(true);
|
||||
cpu().SetLeaves({
|
||||
|
Loading…
x
Reference in New Issue
Block a user