|
|
@@ -192,8 +192,8 @@ TEST(Registry, Functionalities) {
|
|
|
|
|
|
ASSERT_EQ(registry.emplace<int>(e0, 42), 42);
|
|
|
ASSERT_EQ(registry.emplace<char>(e0, 'c'), 'c');
|
|
|
- ASSERT_NO_FATAL_FAILURE(registry.remove<int>(e1));
|
|
|
- ASSERT_NO_FATAL_FAILURE(registry.remove<char>(e1));
|
|
|
+ ASSERT_NO_FATAL_FAILURE(registry.erase<int>(e1));
|
|
|
+ ASSERT_NO_FATAL_FAILURE(registry.erase<char>(e1));
|
|
|
|
|
|
ASSERT_TRUE((registry.all_of<int, char>(e0)));
|
|
|
ASSERT_FALSE((registry.all_of<int, char>(e1)));
|
|
|
@@ -288,8 +288,8 @@ TEST(Registry, Functionalities) {
|
|
|
|
|
|
registry.emplace<int>(e4);
|
|
|
|
|
|
- ASSERT_EQ(registry.remove_if_exists<int>(e4), 1u);
|
|
|
- ASSERT_EQ(registry.remove_if_exists<int>(e5), 0u);
|
|
|
+ ASSERT_EQ(registry.remove<int>(e4), 1u);
|
|
|
+ ASSERT_EQ(registry.remove<int>(e5), 0u);
|
|
|
|
|
|
ASSERT_EQ(registry.size<int>(), 0u);
|
|
|
ASSERT_EQ(registry.size<char>(), 0u);
|
|
|
@@ -319,7 +319,7 @@ TEST(Registry, Move) {
|
|
|
ASSERT_EQ(test.parent, ®istry);
|
|
|
|
|
|
entt::registry other{std::move(registry)};
|
|
|
- other.remove<int>(entity);
|
|
|
+ other.erase<int>(entity);
|
|
|
registry.emplace<int>(registry.create(entity));
|
|
|
|
|
|
ASSERT_EQ(test.parent, &other);
|
|
|
@@ -771,7 +771,7 @@ TEST(Registry, CleanViewAfterRemoveAndClear) {
|
|
|
|
|
|
ASSERT_EQ(view.size_hint(), 1u);
|
|
|
|
|
|
- registry.remove<char>(entity);
|
|
|
+ registry.erase<char>(entity);
|
|
|
|
|
|
ASSERT_EQ(view.size_hint(), 1u);
|
|
|
|
|
|
@@ -802,7 +802,7 @@ TEST(Registry, CleanNonOwningGroupViewAfterRemoveAndClear) {
|
|
|
|
|
|
ASSERT_EQ(group.size(), 1u);
|
|
|
|
|
|
- registry.remove<char>(entity);
|
|
|
+ registry.erase<char>(entity);
|
|
|
|
|
|
ASSERT_EQ(group.size(), 0u);
|
|
|
|
|
|
@@ -833,7 +833,7 @@ TEST(Registry, CleanFullOwningGroupViewAfterRemoveAndClear) {
|
|
|
|
|
|
ASSERT_EQ(group.size(), 1u);
|
|
|
|
|
|
- registry.remove<char>(entity);
|
|
|
+ registry.erase<char>(entity);
|
|
|
|
|
|
ASSERT_EQ(group.size(), 0u);
|
|
|
|
|
|
@@ -864,7 +864,7 @@ TEST(Registry, CleanPartialOwningGroupViewAfterRemoveAndClear) {
|
|
|
|
|
|
ASSERT_EQ(group.size(), 1u);
|
|
|
|
|
|
- registry.remove<char>(entity);
|
|
|
+ registry.erase<char>(entity);
|
|
|
|
|
|
ASSERT_EQ(group.size(), 0u);
|
|
|
|
|
|
@@ -920,7 +920,7 @@ TEST(Registry, NestedGroups) {
|
|
|
ASSERT_FALSE(g1.contains(entities[i*2]));
|
|
|
ASSERT_TRUE(g2.contains(entities[i*2+1]));
|
|
|
ASSERT_TRUE(g2.contains(entities[i*2]));
|
|
|
- registry.remove<int>(entities[i*2+1]);
|
|
|
+ registry.erase<int>(entities[i*2+1]);
|
|
|
}
|
|
|
|
|
|
ASSERT_EQ(g1.size(), 0u);
|
|
|
@@ -965,7 +965,7 @@ TEST(Registry, NestedGroups) {
|
|
|
ASSERT_EQ(g3.size(), 0u);
|
|
|
|
|
|
for(auto i = 0u; i < 5u; ++i) {
|
|
|
- registry.remove<double>(entities[i*2]);
|
|
|
+ registry.erase<double>(entities[i*2]);
|
|
|
}
|
|
|
|
|
|
ASSERT_EQ(g1.size(), 10u);
|
|
|
@@ -979,8 +979,8 @@ TEST(Registry, NestedGroups) {
|
|
|
ASSERT_TRUE(g2.contains(entities[i*2]));
|
|
|
ASSERT_FALSE(g3.contains(entities[i*2+1]));
|
|
|
ASSERT_TRUE(g3.contains(entities[i*2]));
|
|
|
- registry.remove<int>(entities[i*2+1]);
|
|
|
- registry.remove<int>(entities[i*2]);
|
|
|
+ registry.erase<int>(entities[i*2+1]);
|
|
|
+ registry.erase<int>(entities[i*2]);
|
|
|
}
|
|
|
|
|
|
ASSERT_EQ(g1.size(), 0u);
|
|
|
@@ -1095,8 +1095,8 @@ TEST(Registry, Signals) {
|
|
|
ASSERT_EQ(listener.counter, 4);
|
|
|
ASSERT_EQ(listener.last, e0);
|
|
|
|
|
|
- registry.remove<empty_type>(e0);
|
|
|
- registry.remove<int>(e0);
|
|
|
+ registry.erase<empty_type>(e0);
|
|
|
+ registry.erase<int>(e0);
|
|
|
|
|
|
ASSERT_EQ(listener.counter, 2);
|
|
|
ASSERT_EQ(listener.last, e0);
|
|
|
@@ -1104,8 +1104,8 @@ TEST(Registry, Signals) {
|
|
|
registry.on_destroy<empty_type>().disconnect<&listener::decr<empty_type>>(listener);
|
|
|
registry.on_destroy<int>().disconnect<&listener::decr<int>>(listener);
|
|
|
|
|
|
- registry.remove<empty_type>(e1);
|
|
|
- registry.remove<int>(e1);
|
|
|
+ registry.erase<empty_type>(e1);
|
|
|
+ registry.erase<int>(e1);
|
|
|
|
|
|
ASSERT_EQ(listener.counter, 2);
|
|
|
ASSERT_EQ(listener.last, e0);
|
|
|
@@ -1123,7 +1123,7 @@ TEST(Registry, Signals) {
|
|
|
registry.on_destroy<int>().connect<&listener::decr<int>>(listener);
|
|
|
|
|
|
registry.emplace<int>(e0);
|
|
|
- registry.remove_if_exists<int>(e1);
|
|
|
+ registry.erase<int>(e1);
|
|
|
|
|
|
ASSERT_EQ(listener.counter, 2);
|
|
|
ASSERT_EQ(listener.last, e1);
|
|
|
@@ -1131,7 +1131,7 @@ TEST(Registry, Signals) {
|
|
|
registry.on_construct<empty_type>().connect<&listener::incr<empty_type>>(listener);
|
|
|
registry.on_destroy<empty_type>().connect<&listener::decr<empty_type>>(listener);
|
|
|
|
|
|
- registry.remove_if_exists<empty_type>(e1);
|
|
|
+ registry.erase<empty_type>(e1);
|
|
|
registry.emplace<empty_type>(e0);
|
|
|
|
|
|
ASSERT_EQ(listener.counter, 2);
|
|
|
@@ -1153,8 +1153,8 @@ TEST(Registry, Signals) {
|
|
|
ASSERT_EQ(listener.counter, 2);
|
|
|
ASSERT_EQ(listener.last, e1);
|
|
|
|
|
|
- registry.remove<int>(e0);
|
|
|
- registry.remove<empty_type>(e0);
|
|
|
+ registry.erase<int>(e0);
|
|
|
+ registry.erase<empty_type>(e0);
|
|
|
registry.emplace_or_replace<int>(e0);
|
|
|
registry.emplace_or_replace<empty_type>(e0);
|
|
|
|
|
|
@@ -1263,6 +1263,40 @@ TEST(Registry, Insert) {
|
|
|
ASSERT_EQ(registry.get<float>(e2), 2.f);
|
|
|
}
|
|
|
|
|
|
+TEST(Registry, Erase) {
|
|
|
+ entt::registry registry;
|
|
|
+
|
|
|
+ const auto e0 = registry.create();
|
|
|
+ const auto e1 = registry.create();
|
|
|
+ const auto e2 = registry.create();
|
|
|
+
|
|
|
+ registry.emplace<int>(e0);
|
|
|
+ registry.emplace<char>(e0);
|
|
|
+ registry.emplace<double>(e0);
|
|
|
+
|
|
|
+ registry.emplace<int>(e1);
|
|
|
+ registry.emplace<char>(e1);
|
|
|
+
|
|
|
+ registry.emplace<int>(e2);
|
|
|
+
|
|
|
+ ASSERT_TRUE(registry.all_of<int>(e0));
|
|
|
+ ASSERT_TRUE(registry.all_of<int>(e1));
|
|
|
+ ASSERT_TRUE(registry.all_of<int>(e2));
|
|
|
+
|
|
|
+ const auto view = registry.view<int, char>();
|
|
|
+
|
|
|
+ registry.erase<int>(e0);
|
|
|
+ registry.erase<int>(view.begin(), view.end());
|
|
|
+ registry.erase<int>(view.begin(), view.end());
|
|
|
+
|
|
|
+ ASSERT_DEATH(registry.erase<int>(e0), "");
|
|
|
+ ASSERT_DEATH(registry.erase<int>(e1), "");
|
|
|
+
|
|
|
+ ASSERT_FALSE(registry.all_of<int>(e0));
|
|
|
+ ASSERT_FALSE(registry.all_of<int>(e1));
|
|
|
+ ASSERT_TRUE(registry.all_of<int>(e2));
|
|
|
+}
|
|
|
+
|
|
|
TEST(Registry, Remove) {
|
|
|
entt::registry registry;
|
|
|
|
|
|
@@ -1284,7 +1318,11 @@ TEST(Registry, Remove) {
|
|
|
ASSERT_TRUE(registry.all_of<int>(e2));
|
|
|
|
|
|
const auto view = registry.view<int, char>();
|
|
|
- registry.remove<int>(view.begin(), view.end());
|
|
|
+
|
|
|
+ ASSERT_EQ(registry.remove<int>(e0), 1u);
|
|
|
+ ASSERT_EQ(registry.remove<int>(view.begin(), view.end()), 1u);
|
|
|
+ ASSERT_EQ(registry.remove<int>(view.begin(), view.end()), 0u);
|
|
|
+ ASSERT_EQ(registry.remove<int>(e1), 0u);
|
|
|
|
|
|
ASSERT_FALSE(registry.all_of<int>(e0));
|
|
|
ASSERT_FALSE(registry.all_of<int>(e1));
|
|
|
@@ -1444,7 +1482,7 @@ TEST(Registry, Dependencies) {
|
|
|
ASSERT_TRUE(registry.all_of<int>(entity));
|
|
|
ASSERT_EQ(registry.get<double>(entity), .0);
|
|
|
|
|
|
- registry.remove<int>(entity);
|
|
|
+ registry.erase<int>(entity);
|
|
|
|
|
|
ASSERT_FALSE((registry.any_of<int, double>(entity)));
|
|
|
|