瀏覽代碼

tests: code coverage back to 100%

Michele Caini 6 年之前
父節點
當前提交
38a2751cd9
共有 1 個文件被更改,包括 21 次插入0 次删除
  1. 21 0
      test/entt/entity/registry.cpp

+ 21 - 0
test/entt/entity/registry.cpp

@@ -304,6 +304,27 @@ TEST(Registry, CreateManyEntitiesAtOnce) {
     ASSERT_EQ(registry.version(entities[2]), entt::registry::version_type{0});
 }
 
+TEST(Registry, CreateManyEntitiesAtOnceWithListener) {
+    entt::registry registry;
+    entt::entity entities[3];
+    listener listener;
+
+    registry.on_construct<int>().connect<&listener::incr<int>>(listener);
+    registry.create(std::begin(entities), std::end(entities));
+    registry.assign<int>(std::begin(entities), std::end(entities));
+    registry.assign<char>(std::begin(entities), std::end(entities));
+
+    ASSERT_EQ(listener.counter, 3);
+
+    registry.on_construct<int>().disconnect<&listener::incr<int>>(listener);
+    registry.on_construct<empty_type>().connect<&listener::incr<empty_type>>(listener);
+    registry.create(std::begin(entities), std::end(entities));
+    registry.assign<char>(std::begin(entities), std::end(entities));
+    registry.assign<empty_type>(std::begin(entities), std::end(entities));
+
+    ASSERT_EQ(listener.counter, 6);
+}
+
 TEST(Registry, CreateWithHint) {
     entt::registry registry;
     auto e3 = registry.create(entt::entity{3});