123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- """
- Copyright (c) Contributors to the Open 3D Engine Project.
- For complete copyright and license terms please see the LICENSE at the root of this distribution.
- SPDX-License-Identifier: Apache-2.0 OR MIT
- """
- def AddEntity_UnderLevelPrefab():
- """
- Test description:
- - Creates an entity under level container.
- - Verifies Undo/Redo.
- """
- from editor_python_test_tools.editor_entity_utils import EditorEntity
- from editor_python_test_tools.wait_utils import PrefabWaiter
- import Prefab.tests.PrefabTestUtils as prefab_test_utils
- prefab_test_utils.open_base_tests_level()
- # Creates a new Entity at the root level
- # Asserts if creation didn't succeed
- entity = EditorEntity.create_editor_entity_at((100.0, 100.0, 100.0), name = "TestEntity")
- assert entity.id.IsValid(), "Couldn't create entity"
- level_container_entity = EditorEntity(entity.get_parent_id())
- # Test undo/redo on add entity
- azlmbr.legacy.general.undo()
- azlmbr.legacy.general.undo()
- PrefabWaiter.wait_for_propagation()
- level_container_child_entities_count = len(level_container_entity.get_children_ids())
- assert level_container_child_entities_count == 0, f"{level_container_child_entities_count} entities " \
- f"found in level after Undo operation, when there should " \
- f"be 0 entities"
- azlmbr.legacy.general.redo()
- PrefabWaiter.wait_for_propagation()
- level_container_child_entities_count = len(level_container_entity.get_children_ids())
- assert level_container_child_entities_count == 1, f"{level_container_child_entities_count} entities " \
- f"found in level after Redo operation, when there should " \
- f"be 1 entity"
- if __name__ == "__main__":
- from editor_python_test_tools.utils import Report
- Report.start_test(AddEntity_UnderLevelPrefab)
|