More robust tests

This commit is contained in:
David Markowitz 2023-06-09 23:05:44 -07:00
parent 1c23f3c030
commit 2a2799793d
2 changed files with 22 additions and 5 deletions

View File

@ -175,8 +175,11 @@ void Entity::ApplyComponentWhitelist(std::vector<eReplicaComponentType>& compone
if (whitelistIndex < 0 || whitelistIndex >= m_ComponentWhitelists.size()) return;
for (const auto& componentToKeep : m_ComponentWhitelists.at(whitelistIndex)) {
const auto componentIter = std::find(components.begin(), components.end(), componentToKeep);
if (componentIter != components.end()) components.erase(componentIter);
while (true) {
const auto componentIter = std::find(components.begin(), components.end(), componentToKeep);
if (componentIter == components.end()) break;
components.erase(componentIter);
}
}
}

View File

@ -34,12 +34,26 @@ protected:
TEST_F(EntityTests, WhitelistTest) {
const auto whitelists = Entity::GetComponentWhitelists();
std::vector<eReplicaComponentType> whitelist = {
eReplicaComponentType::RACING_STATS,
eReplicaComponentType::SIMPLE_PHYSICS,
eReplicaComponentType::CONTROLLABLE_PHYSICS,
eReplicaComponentType::SIMPLE_PHYSICS,
eReplicaComponentType::MODEL_BEHAVIOR,
eReplicaComponentType::SPAWN,
eReplicaComponentType::RENDER,
eReplicaComponentType::ITEM,
eReplicaComponentType::BLUEPRINT,
eReplicaComponentType::PET,
eReplicaComponentType::SKILL,
eReplicaComponentType::DESTROYABLE,
eReplicaComponentType::CONTROLLABLE_PHYSICS,
eReplicaComponentType::SIMPLE_PHYSICS,
eReplicaComponentType::MODEL_BEHAVIOR,
eReplicaComponentType::SPAWN,
eReplicaComponentType::RENDER,
eReplicaComponentType::ITEM,
eReplicaComponentType::BLUEPRINT,
eReplicaComponentType::PET,
eReplicaComponentType::SKILL,
eReplicaComponentType::DESTROYABLE,
eReplicaComponentType::RACING_CONTROL
};
RunWhitelistTest(0, whitelist);
RunWhitelistTest(1, whitelist);