瀏覽代碼

test: use the right values for the free_list to avoid regressions

Michele Caini 2 年之前
父節點
當前提交
d93f96f48f
共有 1 個文件被更改,包括 15 次插入15 次删除
  1. 15 15
      test/entt/entity/sparse_set.cpp

+ 15 - 15
test/entt/entity/sparse_set.cpp

@@ -400,14 +400,14 @@ TEST(SparseSet, Erase) {
     entt::entity entity[3u]{entt::entity{3}, entt::entity{42}, traits_type::construct(9, 3)};
 
     ASSERT_EQ(set.policy(), entt::deletion_policy::swap_and_pop);
-    ASSERT_GT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), traits_type::entity_mask);
     ASSERT_TRUE(set.empty());
 
     set.push(std::begin(entity), std::end(entity));
     set.erase(set.begin(), set.end());
 
     ASSERT_TRUE(set.empty());
-    ASSERT_GT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), traits_type::entity_mask);
     ASSERT_EQ(set.current(entity[0u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[1u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entt::tombstone));
@@ -416,7 +416,7 @@ TEST(SparseSet, Erase) {
     set.erase(entity, entity + 2u);
 
     ASSERT_FALSE(set.empty());
-    ASSERT_GT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), traits_type::entity_mask);
     ASSERT_EQ(set.current(entity[0u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[1u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entity[2u]));
@@ -425,7 +425,7 @@ TEST(SparseSet, Erase) {
     set.erase(entity[2u]);
 
     ASSERT_TRUE(set.empty());
-    ASSERT_GT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), traits_type::entity_mask);
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entt::tombstone));
 
     set.push(std::begin(entity), std::end(entity));
@@ -433,7 +433,7 @@ TEST(SparseSet, Erase) {
     set.erase(entity, entity + 2u);
 
     ASSERT_FALSE(set.empty());
-    ASSERT_GT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), traits_type::entity_mask);
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entity[2u]));
     ASSERT_EQ(*set.begin(), entity[2u]);
 }
@@ -469,7 +469,7 @@ TEST(SparseSet, StableErase) {
     entt::entity entity[3u]{entt::entity{3}, entt::entity{42}, traits_type::construct(9, 3)};
 
     ASSERT_EQ(set.policy(), entt::deletion_policy::in_place);
-    ASSERT_GT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), traits_type::entity_mask);
     ASSERT_TRUE(set.empty());
     ASSERT_EQ(set.size(), 0u);
 
@@ -481,7 +481,7 @@ TEST(SparseSet, StableErase) {
 
     ASSERT_FALSE(set.empty());
     ASSERT_EQ(set.size(), 3u);
-    ASSERT_LT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), 0u);
     ASSERT_EQ(set.current(entity[0u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[1u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entt::tombstone));
@@ -497,7 +497,7 @@ TEST(SparseSet, StableErase) {
 
     ASSERT_FALSE(set.empty());
     ASSERT_EQ(set.size(), 3u);
-    ASSERT_LT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), 1u);
     ASSERT_EQ(set.current(entity[0u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[1u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entity[2u]));
@@ -509,7 +509,7 @@ TEST(SparseSet, StableErase) {
 
     ASSERT_FALSE(set.empty());
     ASSERT_EQ(set.size(), 3u);
-    ASSERT_LT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), 2u);
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entt::tombstone));
 
     set.push(entity[0u]);
@@ -521,7 +521,7 @@ TEST(SparseSet, StableErase) {
 
     ASSERT_FALSE(set.empty());
     ASSERT_EQ(set.size(), 3u);
-    ASSERT_LT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), 0u);
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entity[2u]));
     ASSERT_TRUE(set.at(0u) == entt::tombstone);
     ASSERT_EQ(set.at(1u), entity[2u]);
@@ -532,7 +532,7 @@ TEST(SparseSet, StableErase) {
 
     ASSERT_FALSE(set.empty());
     ASSERT_EQ(set.size(), 1u);
-    ASSERT_GT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), traits_type::entity_mask);
     ASSERT_EQ(set.current(entity[0u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[1u]), traits_type::to_version(entt::tombstone));
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entity[2u]));
@@ -542,7 +542,7 @@ TEST(SparseSet, StableErase) {
     set.clear();
 
     ASSERT_EQ(set.size(), 0u);
-    ASSERT_GT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), traits_type::entity_mask);
     ASSERT_EQ(set.current(entity[2u]), traits_type::to_version(entt::tombstone));
 
     set.push(entity[0u]);
@@ -614,7 +614,7 @@ TEST(SparseSet, SwapOnlyErase) {
     entt::entity entity[3u]{entt::entity{3}, entt::entity{42}, traits_type::construct(9, 3)};
 
     ASSERT_EQ(set.policy(), entt::deletion_policy::swap_only);
-    ASSERT_EQ(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), 0u);
     ASSERT_TRUE(set.empty());
 
     set.push(std::begin(entity), std::end(entity));
@@ -622,13 +622,13 @@ TEST(SparseSet, SwapOnlyErase) {
 
     ASSERT_FALSE(set.empty());
     ASSERT_EQ(set.size(), 3u);
-    ASSERT_LT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), 0u);
 
     set.erase(entity[2u]);
 
     ASSERT_FALSE(set.empty());
     ASSERT_EQ(set.size(), 3u);
-    ASSERT_LT(set.free_list(), set.size());
+    ASSERT_EQ(set.free_list(), 0u);
 
     ASSERT_EQ(set.at(0u), entity[0u]);
     ASSERT_EQ(set.at(1u), entity[1u]);