From dab56da58ca7d49aee308221c2f60dea3fdefcda Mon Sep 17 00:00:00 2001 From: neargye Date: Mon, 11 May 2020 15:26:33 +0500 Subject: [PATCH] update test --- test/test.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/test/test.cpp b/test/test.cpp index a3db5fa..9629e88 100644 --- a/test/test.cpp +++ b/test/test.cpp @@ -43,10 +43,15 @@ enum number : unsigned long { two = 200, three = 300, four = 400, + +#if defined(_MSC_VER) && _MSC_VER >= 1920 + // Aliases won't work on vs2017. + _1 = one, _2 = two, _3 = three, _4 = four +#endif }; namespace magic_enum { @@ -589,6 +594,8 @@ TEST_CASE("enum_traits") { REQUIRE(enum_traits::is_sparse); } +#if defined(_MSC_VER) && _MSC_VER >= 1920 +// Aliases won't work on vs2017. TEST_CASE("aliases") { REQUIRE(enum_count() == 3); @@ -601,7 +608,13 @@ TEST_CASE("aliases") { REQUIRE(enum_integer(number::two) == enum_integer(number::_2)); REQUIRE(enum_integer(number::three) == enum_integer(number::_3)); REQUIRE(enum_integer(number::four) == enum_integer(number::_4)); + + REQUIRE_FALSE(enum_cast("_1").has_value()); + REQUIRE_FALSE(enum_cast("_2").has_value()); + REQUIRE_FALSE(enum_cast("_3").has_value()); + REQUIRE_FALSE(enum_cast("_4").has_value()); } +#endif TEST_CASE("extrema") { enum class BadColor : std::uint64_t {