#include #include #include "types.h" extern void bind_ctx(entt::meta_ctx); extern void meta_init(); extern void meta_deinit(); TEST(Lib, Meta) { ASSERT_FALSE(entt::resolve("double"_hs)); ASSERT_FALSE(entt::resolve("char"_hs)); ASSERT_FALSE(entt::resolve("int"_hs)); ASSERT_FALSE(entt::resolve().data("0"_hs)); ASSERT_FALSE(entt::resolve().data("c"_hs)); bind_ctx(entt::meta_ctx{}); entt::meta().type("double"_hs).conv(); meta_init(); ASSERT_TRUE(entt::resolve("double"_hs)); ASSERT_TRUE(entt::resolve("char"_hs)); ASSERT_TRUE(entt::resolve("int"_hs)); ASSERT_TRUE(entt::resolve().data("0"_hs)); ASSERT_TRUE(entt::resolve().data("c"_hs)); meta_deinit(); entt::meta().reset(); ASSERT_FALSE(entt::resolve("double"_hs)); ASSERT_FALSE(entt::resolve("char"_hs)); ASSERT_FALSE(entt::resolve("int"_hs)); ASSERT_FALSE(entt::resolve().data("0"_hs)); ASSERT_FALSE(entt::resolve().data("c"_hs)); }