From a0f906d6bfba14a3c67a9bc310ebb63ed676cd8d Mon Sep 17 00:00:00 2001 From: Michele Caini Date: Mon, 28 Oct 2024 17:14:18 +0100 Subject: [PATCH] test: delete meta_prop tests --- test/CMakeLists.txt | 1 - test/entt/meta/meta_prop.cpp | 127 ----------------------------------- 2 files changed, 128 deletions(-) delete mode 100644 test/entt/meta/meta_prop.cpp diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 3dbeb7b43..686cf5bcb 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -267,7 +267,6 @@ SETUP_BASIC_TEST(meta_dtor entt/meta/meta_dtor.cpp) SETUP_BASIC_TEST(meta_func entt/meta/meta_func.cpp) SETUP_BASIC_TEST(meta_handle entt/meta/meta_handle.cpp) SETUP_BASIC_TEST(meta_pointer entt/meta/meta_pointer.cpp) -SETUP_BASIC_TEST(meta_prop entt/meta/meta_prop.cpp) SETUP_BASIC_TEST(meta_range entt/meta/meta_range.cpp) SETUP_BASIC_TEST(meta_template entt/meta/meta_template.cpp) SETUP_BASIC_TEST(meta_type entt/meta/meta_type.cpp) diff --git a/test/entt/meta/meta_prop.cpp b/test/entt/meta/meta_prop.cpp deleted file mode 100644 index c81250596..000000000 --- a/test/entt/meta/meta_prop.cpp +++ /dev/null @@ -1,127 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include - -struct base_1 {}; -struct base_2 {}; -struct base_3 {}; -struct derived: base_1, base_2, base_3 {}; - -struct MetaProp: ::testing::Test { - void SetUp() override { - using namespace entt::literals; - - entt::meta() - .type("base_1"_hs) - .prop("int"_hs, 2); - - entt::meta() - .type("base_2"_hs) - .prop("bool"_hs, false) - .prop("char[]"_hs, "char[]"); - - entt::meta() - .type("base_3"_hs) - .prop("key_only"_hs) - .prop("key"_hs, 2); - - entt::meta() - .type("derived"_hs) - .base() - .base() - .base(); - } - - void TearDown() override { - entt::meta_reset(); - } -}; - -TEST_F(MetaProp, Prop) { - using namespace entt::literals; - - auto prop = entt::resolve().prop("int"_hs); - - ASSERT_TRUE(prop); - - ASSERT_EQ(prop, prop); - ASSERT_NE(prop, entt::meta_prop{}); - ASSERT_FALSE(prop != prop); - ASSERT_TRUE(prop == prop); - - auto value = prop.value(); - auto cvalue = std::as_const(prop).value(); - - ASSERT_NE(value.try_cast(), nullptr); - ASSERT_EQ(cvalue.try_cast(), nullptr); - - ASSERT_NE(value.try_cast(), nullptr); - ASSERT_NE(cvalue.try_cast(), nullptr); - - ASSERT_EQ(value, 2); - ASSERT_EQ(cvalue, 2); -} - -TEST_F(MetaProp, FromBase) { - using namespace entt::literals; - - auto type = entt::resolve(); - auto prop_bool = type.prop("bool"_hs); - auto prop_int = type.prop("int"_hs); - auto key_only = type.prop("key_only"_hs); - auto key_value = type.prop("key"_hs); - - ASSERT_TRUE(prop_bool); - ASSERT_TRUE(prop_int); - ASSERT_TRUE(key_only); - ASSERT_TRUE(key_value); - - ASSERT_FALSE(prop_bool.value().cast()); - ASSERT_EQ(prop_int.value().cast(), 2); - ASSERT_FALSE(key_only.value()); - ASSERT_EQ(key_value.value().cast(), 2); -} - -TEST_F(MetaProp, DeducedArrayType) { - using namespace entt::literals; - - auto prop = entt::resolve().prop("char[]"_hs); - - ASSERT_TRUE(prop); - ASSERT_EQ(prop.value().type(), entt::resolve()); - ASSERT_EQ(strcmp(prop.value().cast(), "char[]"), 0); -} - -TEST_F(MetaProp, ReRegistration) { - using namespace entt::literals; - - SetUp(); - - auto &&node = entt::internal::resolve(entt::internal::meta_context::from(entt::locator::value_or())); - auto type = entt::resolve(); - - ASSERT_TRUE(node.details); - ASSERT_FALSE(node.details->prop.empty()); - ASSERT_EQ(node.details->prop.size(), 1u); - - ASSERT_TRUE(type.prop("int"_hs)); - ASSERT_EQ(type.prop("int"_hs).value().cast(), 2); - - entt::meta().prop("int"_hs, 0); - entt::meta().prop("double"_hs, 3.); - - ASSERT_TRUE(node.details); - ASSERT_FALSE(node.details->prop.empty()); - ASSERT_EQ(node.details->prop.size(), 2u); - - ASSERT_TRUE(type.prop("int"_hs)); - ASSERT_TRUE(type.prop("double"_hs)); - ASSERT_EQ(type.prop("int"_hs).value().cast(), 0); - ASSERT_EQ(type.prop("double"_hs).value().cast(), 3.); -}