family.cpp 645 B

12345678910111213141516171819202122
  1. #include <gtest/gtest.h>
  2. #include <entt/core/family.hpp>
  3. using a_family = entt::family<struct a_family_type>;
  4. using another_family = entt::family<struct another_family_type>;
  5. TEST(Family, Functionalities) {
  6. auto t1 = a_family::type<int>;
  7. auto t2 = a_family::type<int>;
  8. auto t3 = a_family::type<char>;
  9. auto t4 = another_family::type<double>;
  10. ASSERT_EQ(t1, t2);
  11. ASSERT_NE(t1, t3);
  12. ASSERT_EQ(t1, t4);
  13. }
  14. TEST(Family, Uniqueness) {
  15. ASSERT_NE(a_family::type<int>, a_family::type<int &>);
  16. ASSERT_NE(a_family::type<int>, a_family::type<int &&>);
  17. ASSERT_NE(a_family::type<int>, a_family::type<const int &>);
  18. }