diff --git a/test/test.cpp b/test/test.cpp index e1b87c1..3be4202 100644 --- a/test/test.cpp +++ b/test/test.cpp @@ -479,19 +479,51 @@ TEST_CASE("extrema") { // However, it affects the value of min_v. When reflected_min_v was incorrect, // the presence of NONE caused miv_v to be equal to -1, which was then cast to unsigned, // leading to a value of 18446744073709551615 (numeric_limit_max of uint64_t). - NONE = std::numeric_limits::max(), + NONE = std::numeric_limits::max() }; SECTION("min") { REQUIRE(magic_enum::enum_range::min == MAGIC_ENUM_RANGE_MIN); REQUIRE(magic_enum::detail::reflected_min_v == 0); REQUIRE(magic_enum::detail::min_v == 0); + + REQUIRE(magic_enum::enum_range::min == MAGIC_ENUM_RANGE_MIN); + REQUIRE(magic_enum::detail::reflected_min_v == MAGIC_ENUM_RANGE_MIN); + REQUIRE(magic_enum::detail::min_v == -12); + + REQUIRE(magic_enum::enum_range::min == MAGIC_ENUM_RANGE_MIN); + REQUIRE(magic_enum::detail::reflected_min_v == MAGIC_ENUM_RANGE_MIN); + REQUIRE(magic_enum::detail::min_v == 1); + + REQUIRE(magic_enum::enum_range::min == MAGIC_ENUM_RANGE_MIN); + REQUIRE(magic_enum::detail::reflected_min_v == MAGIC_ENUM_RANGE_MIN); + REQUIRE(magic_enum::detail::min_v == -120); + + REQUIRE(magic_enum::enum_range::min == 100); + REQUIRE(magic_enum::detail::reflected_min_v == 100); + REQUIRE(magic_enum::detail::min_v == 100); } SECTION("max") { REQUIRE(magic_enum::enum_range::max == MAGIC_ENUM_RANGE_MAX); REQUIRE(magic_enum::detail::reflected_max_v == MAGIC_ENUM_RANGE_MAX); REQUIRE(magic_enum::detail::max_v == 2); + + REQUIRE(magic_enum::enum_range::max == MAGIC_ENUM_RANGE_MAX); + REQUIRE(magic_enum::detail::reflected_max_v == MAGIC_ENUM_RANGE_MAX); + REQUIRE(magic_enum::detail::max_v == 15); + + REQUIRE(magic_enum::enum_range::max == MAGIC_ENUM_RANGE_MAX); + REQUIRE(magic_enum::detail::reflected_max_v == MAGIC_ENUM_RANGE_MAX); + REQUIRE(magic_enum::detail::max_v == 3); + + REQUIRE(magic_enum::enum_range::max == MAGIC_ENUM_RANGE_MAX); + REQUIRE(magic_enum::detail::reflected_max_v == MAGIC_ENUM_RANGE_MAX); + REQUIRE(magic_enum::detail::max_v == 120); + + REQUIRE(magic_enum::enum_range::max == 300); + REQUIRE(magic_enum::detail::reflected_max_v == 300); + REQUIRE(magic_enum::detail::max_v == 300); } }