From 60289fa846f0b2a8195bc1cb3f643bbcdc741c05 Mon Sep 17 00:00:00 2001 From: Michele Caini Date: Thu, 28 Nov 2024 15:47:54 +0100 Subject: [PATCH] test: meta_reset --- test/entt/meta/meta_factory.cpp | 52 ++++++++++++++++++++++++++++++++- 1 file changed, 51 insertions(+), 1 deletion(-) diff --git a/test/entt/meta/meta_factory.cpp b/test/entt/meta/meta_factory.cpp index e1339b706..478e179e9 100644 --- a/test/entt/meta/meta_factory.cpp +++ b/test/entt/meta/meta_factory.cpp @@ -459,5 +459,55 @@ TEST_F(MetaFactory, Meta) { } TEST_F(MetaFactory, MetaReset) { - // TODO + using namespace entt::literals; + + entt::meta_ctx ctx{}; + + entt::meta().type("global"_hs); + entt::meta(ctx).type("local"_hs); + + ASSERT_TRUE(entt::resolve(entt::type_id())); + ASSERT_TRUE(entt::resolve(ctx, entt::type_id())); + + entt::meta_reset(); + + ASSERT_FALSE(entt::resolve(entt::type_id())); + ASSERT_TRUE(entt::resolve(ctx, entt::type_id())); + + entt::meta_reset(ctx); + + ASSERT_FALSE(entt::resolve(entt::type_id())); + ASSERT_FALSE(entt::resolve(ctx, entt::type_id())); + + entt::meta().type("global"_hs); + entt::meta(ctx).type("local"_hs); + + ASSERT_TRUE(entt::resolve(entt::type_id())); + ASSERT_TRUE(entt::resolve(ctx, entt::type_id())); + + entt::meta_reset(); + + ASSERT_FALSE(entt::resolve(entt::type_id())); + ASSERT_TRUE(entt::resolve(ctx, entt::type_id())); + + entt::meta_reset(ctx); + + ASSERT_FALSE(entt::resolve(entt::type_id())); + ASSERT_FALSE(entt::resolve(ctx, entt::type_id())); + + entt::meta().type("global"_hs); + entt::meta(ctx).type("local"_hs); + + ASSERT_TRUE(entt::resolve(entt::type_id())); + ASSERT_TRUE(entt::resolve(ctx, entt::type_id())); + + entt::meta_reset("global"_hs); + + ASSERT_FALSE(entt::resolve(entt::type_id())); + ASSERT_TRUE(entt::resolve(ctx, entt::type_id())); + + entt::meta_reset(ctx, "local"_hs); + + ASSERT_FALSE(entt::resolve(entt::type_id())); + ASSERT_FALSE(entt::resolve(ctx, entt::type_id())); }