|
|
@@ -70,8 +70,8 @@ TEST(DefaultRegistry, Functionalities) {
|
|
|
ASSERT_NO_THROW(registry.remove<int>(e2));
|
|
|
ASSERT_NO_THROW(registry.accomodate<int>(e1, 1));
|
|
|
ASSERT_NO_THROW(registry.accomodate<int>(e2, 1));
|
|
|
- ASSERT_EQ(registry.get<int>(e1), 1);
|
|
|
- ASSERT_EQ(registry.get<int>(e2), 1);
|
|
|
+ ASSERT_EQ(static_cast<const registry_type &>(registry).get<int>(e1), 1);
|
|
|
+ ASSERT_EQ(static_cast<const registry_type &>(registry).get<int>(e2), 1);
|
|
|
|
|
|
ASSERT_EQ(registry.size(), registry_type::size_type{3});
|
|
|
ASSERT_EQ(registry.capacity(), registry_type::size_type{3});
|
|
|
@@ -79,6 +79,10 @@ TEST(DefaultRegistry, Functionalities) {
|
|
|
|
|
|
ASSERT_NO_THROW(registry.destroy(e3));
|
|
|
|
|
|
+ ASSERT_TRUE(registry.valid(e1));
|
|
|
+ ASSERT_TRUE(registry.valid(e2));
|
|
|
+ ASSERT_FALSE(registry.valid(e3));
|
|
|
+
|
|
|
ASSERT_EQ(registry.size(), registry_type::size_type{2});
|
|
|
ASSERT_EQ(registry.capacity(), registry_type::size_type{3});
|
|
|
ASSERT_FALSE(registry.empty());
|
|
|
@@ -112,6 +116,35 @@ TEST(DefaultRegistry, Functionalities) {
|
|
|
ASSERT_TRUE(registry.empty<int>());
|
|
|
}
|
|
|
|
|
|
+TEST(DefaultRegistry, Copy) {
|
|
|
+ using registry_type = entt::DefaultRegistry<int, char, double>;
|
|
|
+
|
|
|
+ registry_type registry;
|
|
|
+
|
|
|
+ registry_type::entity_type e1 = registry.create<int, char>();
|
|
|
+ registry_type::entity_type e2 = registry.create<int, double>();
|
|
|
+
|
|
|
+ ASSERT_TRUE(registry.has<int>(e1));
|
|
|
+ ASSERT_TRUE(registry.has<char>(e1));
|
|
|
+ ASSERT_FALSE(registry.has<double>(e1));
|
|
|
+
|
|
|
+ ASSERT_TRUE(registry.has<int>(e2));
|
|
|
+ ASSERT_FALSE(registry.has<char>(e2));
|
|
|
+ ASSERT_TRUE(registry.has<double>(e2));
|
|
|
+
|
|
|
+ ASSERT_NO_THROW(registry.copy(e2, e1));
|
|
|
+
|
|
|
+ ASSERT_TRUE(registry.has<int>(e1));
|
|
|
+ ASSERT_TRUE(registry.has<char>(e1));
|
|
|
+ ASSERT_FALSE(registry.has<double>(e1));
|
|
|
+
|
|
|
+ ASSERT_TRUE(registry.has<int>(e2));
|
|
|
+ ASSERT_TRUE(registry.has<char>(e2));
|
|
|
+ ASSERT_FALSE(registry.has<double>(e2));
|
|
|
+
|
|
|
+ ASSERT_TRUE(registry.empty<double>());
|
|
|
+}
|
|
|
+
|
|
|
TEST(DefaultRegistry, ViewSingleComponent) {
|
|
|
using registry_type = entt::DefaultRegistry<int, char>;
|
|
|
|