diff --git a/Code/Framework/AzToolsFramework/Tests/Prefab/SpawnableCreateTests.cpp b/Code/Framework/AzToolsFramework/Tests/Prefab/SpawnableCreateTests.cpp index af178ec7a4..5cd4cffa35 100644 --- a/Code/Framework/AzToolsFramework/Tests/Prefab/SpawnableCreateTests.cpp +++ b/Code/Framework/AzToolsFramework/Tests/Prefab/SpawnableCreateTests.cpp @@ -15,6 +15,7 @@ #include #include +#pragma optimize("", off) namespace UnitTest { using SpawnableCreateTest = PrefabTestFixture; @@ -71,24 +72,29 @@ namespace UnitTest m_prefabSystemComponent->CreatePrefab({ entitiesCreated[0] }, {}, "test/path1")); ASSERT_TRUE(firstInstance); + ASSERT_TRUE(firstInstance->HasContainerEntity()); + expectedEntityNameSet.insert(firstInstance->GetContainerEntity()->get().GetName()); + AZStd::unique_ptr secondInstance( m_prefabSystemComponent->CreatePrefab({ entitiesCreated[1] }, MakeInstanceList(AZStd::move(firstInstance)), "test/path2")); ASSERT_TRUE(secondInstance); + ASSERT_TRUE(secondInstance->HasContainerEntity()); + expectedEntityNameSet.insert(secondInstance->GetContainerEntity()->get().GetName()); + AZStd::unique_ptr thirdInstance( m_prefabSystemComponent->CreatePrefab({ entitiesCreated[2] }, MakeInstanceList(AZStd::move(secondInstance)), "test/path3")); ASSERT_TRUE(thirdInstance); ASSERT_TRUE(thirdInstance->HasContainerEntity()); - auto& containerEntity = thirdInstance->GetContainerEntity()->get(); - expectedEntityNameSet.insert(containerEntity.GetName()); + expectedEntityNameSet.insert(thirdInstance->GetContainerEntity()->get().GetName()); //Create Spawnable auto& prefabDom = m_prefabSystemComponent->FindTemplateDom(thirdInstance->GetTemplateId()); AzFramework::Spawnable spawnable; AzToolsFramework::Prefab::SpawnableUtils::CreateSpawnable(spawnable, prefabDom); - EXPECT_EQ(spawnable.GetEntities().size() - 1, normalEntityCount); // 1 for container entity + EXPECT_EQ(spawnable.GetEntities().size(), normalEntityCount + 3); // +1 for each container entity const auto& spawnableEntities = spawnable.GetEntities(); AZStd::unordered_set actualEntityNameSet; @@ -97,6 +103,6 @@ namespace UnitTest actualEntityNameSet.insert(spawnableEntity->GetName()); } - EXPECT_EQ(expectedEntityNameSet, actualEntityNameSet); + EXPECT_EQ(actualEntityNameSet, expectedEntityNameSet); } } diff --git a/Code/Framework/AzToolsFramework/Tests/Prefab/SpawnableRemoveEditorInfoTestFixture.cpp b/Code/Framework/AzToolsFramework/Tests/Prefab/SpawnableRemoveEditorInfoTestFixture.cpp index 152d09e9b7..03ce52cfd0 100644 --- a/Code/Framework/AzToolsFramework/Tests/Prefab/SpawnableRemoveEditorInfoTestFixture.cpp +++ b/Code/Framework/AzToolsFramework/Tests/Prefab/SpawnableRemoveEditorInfoTestFixture.cpp @@ -213,7 +213,7 @@ namespace UnitTest AZStd::unique_ptr convertedInstance(aznew Instance()); ASSERT_TRUE(AzToolsFramework::Prefab::PrefabDomUtils::LoadInstanceFromPrefabDom(*convertedInstance, m_prefabDom)); - convertedInstance->DetachNestedEntities( + convertedInstance->DetachAllEntitiesInHierarchy( [this](AZStd::unique_ptr entity) { m_runtimeEntities.emplace_back(entity.release());