Răsfoiți Sursa

test: code coverage

skypjack 5 luni în urmă
părinte
comite
e76bbb2015
1 a modificat fișierele cu 9 adăugiri și 0 ștergeri
  1. 9 0
      test/entt/meta/meta_any.cpp

+ 9 - 0
test/entt/meta/meta_any.cpp

@@ -1321,16 +1321,21 @@ TEST_F(MetaAny, Cast) {
 }
 }
 
 
 TEST_F(MetaAny, AllowCast) {
 TEST_F(MetaAny, AllowCast) {
+    entt::meta_any any{};
     entt::meta_any instance{clazz{}};
     entt::meta_any instance{clazz{}};
     entt::meta_any other{fat{}};
     entt::meta_any other{fat{}};
     entt::meta_any arithmetic{3};
     entt::meta_any arithmetic{3};
     auto as_cref = entt::forward_as_meta(arithmetic.cast<const int &>());
     auto as_cref = entt::forward_as_meta(arithmetic.cast<const int &>());
 
 
+    ASSERT_FALSE(any);
     ASSERT_TRUE(instance);
     ASSERT_TRUE(instance);
     ASSERT_TRUE(other);
     ASSERT_TRUE(other);
     ASSERT_TRUE(arithmetic);
     ASSERT_TRUE(arithmetic);
     ASSERT_TRUE(as_cref);
     ASSERT_TRUE(as_cref);
 
 
+    ASSERT_FALSE(any.allow_cast<clazz>());
+    ASSERT_FALSE(std::as_const(any).allow_cast<clazz>());
+
     ASSERT_TRUE(instance.allow_cast<clazz>());
     ASSERT_TRUE(instance.allow_cast<clazz>());
     ASSERT_TRUE(instance.allow_cast<clazz &>());
     ASSERT_TRUE(instance.allow_cast<clazz &>());
     ASSERT_TRUE(instance.allow_cast<const clazz &>());
     ASSERT_TRUE(instance.allow_cast<const clazz &>());
@@ -1379,16 +1384,20 @@ TEST_F(MetaAny, AllowCast) {
 }
 }
 
 
 TEST_F(MetaAny, OpaqueAllowCast) {
 TEST_F(MetaAny, OpaqueAllowCast) {
+    entt::meta_any any{};
     entt::meta_any instance{clazz{}};
     entt::meta_any instance{clazz{}};
     entt::meta_any other{fat{}};
     entt::meta_any other{fat{}};
     entt::meta_any arithmetic{3};
     entt::meta_any arithmetic{3};
     auto as_cref = entt::forward_as_meta(arithmetic.cast<const int &>());
     auto as_cref = entt::forward_as_meta(arithmetic.cast<const int &>());
 
 
+    ASSERT_FALSE(any);
     ASSERT_TRUE(instance);
     ASSERT_TRUE(instance);
     ASSERT_TRUE(other);
     ASSERT_TRUE(other);
     ASSERT_TRUE(arithmetic);
     ASSERT_TRUE(arithmetic);
     ASSERT_TRUE(as_cref);
     ASSERT_TRUE(as_cref);
 
 
+    ASSERT_FALSE(any.allow_cast(entt::resolve<clazz>()));
+
     ASSERT_TRUE(instance.allow_cast(entt::resolve<clazz>()));
     ASSERT_TRUE(instance.allow_cast(entt::resolve<clazz>()));
     ASSERT_EQ(instance.type(), entt::resolve<clazz>());
     ASSERT_EQ(instance.type(), entt::resolve<clazz>());