Make Enum Helper parse functions constexpr, added Enum Helper Try Parse functions.
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
@@ -13,6 +13,18 @@ TEST_CASE("Parse Enum case sensitive", "[Utilities]") {
|
||||
CHECK_THROWS(TestEnumHelper::Parse("val1"));
|
||||
}
|
||||
|
||||
TEST_CASE("Try Parse Enum case sensitive", "[Utilities]") {
|
||||
TestEnum v = static_cast<TestEnum>(255);
|
||||
REQUIRE(TestEnumHelper::TryParse("Val1", v));
|
||||
CHECK(v == TestEnum::Val1);
|
||||
REQUIRE(TestEnumHelper::TryParse("Val2", v));
|
||||
CHECK(v == TestEnum::Val2);
|
||||
REQUIRE(TestEnumHelper::TryParse("Val3", v));
|
||||
CHECK(v == TestEnum::Val3);
|
||||
CHECK_FALSE(TestEnumHelper::TryParse("Val4", v));
|
||||
CHECK_FALSE(TestEnumHelper::TryParse("val1", v));
|
||||
}
|
||||
|
||||
TEST_CASE("Parse Enum case insensitive", "[Utilities]") {
|
||||
CHECK(TestEnumHelper::Parse("Val1", true) == TestEnum::Val1);
|
||||
CHECK(TestEnumHelper::Parse("Val2", true) == TestEnum::Val2);
|
||||
@@ -23,6 +35,23 @@ TEST_CASE("Parse Enum case insensitive", "[Utilities]") {
|
||||
CHECK_THROWS(TestEnumHelper::Parse("Val4", true));
|
||||
}
|
||||
|
||||
TEST_CASE("Try Parse Enum case insensitive", "[Utilities]") {
|
||||
TestEnum v = static_cast<TestEnum>(255);
|
||||
REQUIRE(TestEnumHelper::TryParse("Val1", v, true));
|
||||
CHECK(v == TestEnum::Val1);
|
||||
REQUIRE(TestEnumHelper::TryParse("Val2", v, true));
|
||||
CHECK(v == TestEnum::Val2);
|
||||
REQUIRE(TestEnumHelper::TryParse("Val3", v, true));
|
||||
CHECK(v == TestEnum::Val3);
|
||||
REQUIRE(TestEnumHelper::TryParse("val1", v, true));
|
||||
CHECK(v == TestEnum::Val1);
|
||||
REQUIRE(TestEnumHelper::TryParse("vAL2", v, true));
|
||||
CHECK(v == TestEnum::Val2);
|
||||
REQUIRE(TestEnumHelper::TryParse("VaL3", v, true));
|
||||
CHECK(v == TestEnum::Val3);
|
||||
CHECK_FALSE(TestEnumHelper::TryParse("Val4", v, true));
|
||||
}
|
||||
|
||||
TEST_CASE("Enum To String", "[Utilities]") {
|
||||
CHECK(TestEnumHelper::ToString(TestEnum::Val1) == "Val1");
|
||||
CHECK(TestEnumHelper::ToString(TestEnum::Val2) == "Val2");
|
||||
|
||||
Reference in New Issue
Block a user