12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- """
- 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
- """
- VARIABLE_COUNT_BEFORE = 1
- VARIABLE_COUNT_AFTER = 0
- VARIABLE_NAME = "Test Boolean"
- def EditMenu_Default_UndoRedo():
- """
- Summary:
- Edit > Undo undoes the last action
- Edit > Redo redoes the last undone action
- We create a new variable in variable manager, undo and verify if variable is removed,
- redo it and verify if the variable is created again.
- Expected Behavior:
- The last action is undone upon selecting Undo.
- The last undone action is redone upon selecting Redo.
- Test Steps:
- 1) Open Script Canvas window
- 2) Create Graph
- 3) Create and verify the new variable exists in variable manager
- 4) Delete the variable and verify it's removed in Variable Manager
- 5) Trigger undo action and verify if variable is re-added in Variable Manager
- 6) Close SC window
- Note:
- - This test file must be called from the Open 3D Engine Editor command terminal
- - Any passed and failed tests are written to the Editor.log file.
- Parsing the file or running a log_monitor are required to observe the test results.
- :return: None
- """
- # Preconditions
- import azlmbr.legacy.general as general
- from editor_python_test_tools.QtPy.QtPyO3DEEditor import QtPyO3DEEditor
- general.idle_enable(True)
- # 1) Open Script Canvas window
- qtpy_o3de_editor = QtPyO3DEEditor()
- sc_editor = qtpy_o3de_editor.open_script_canvas()
- # 2) Create Graph
- sc_editor.create_new_script_canvas_graph()
- # 3) Create and verify the new variable exists in variable manager
- variable_manager = sc_editor.variable_manager
- variable_manager.create_new_variable(VARIABLE_NAME, variable_manager.variable_types.Boolean)
- variable_manager.validate_variable_count(VARIABLE_COUNT_BEFORE)
- # 4) Delete the variable and verify it's removed in Variable Manager
- variable_manager.delete_variable(VARIABLE_NAME)
- variable_manager.validate_variable_count(VARIABLE_COUNT_AFTER)
-
- # 5) Trigger undo action and verify if variable is re-added in Variable Manager
- sc_editor.trigger_undo_action()
- variable_manager.validate_variable_count(VARIABLE_COUNT_BEFORE)
- # 6) Close SC window
- qtpy_o3de_editor.close_script_canvas()
- if __name__ == "__main__":
- from editor_python_test_tools.utils import Report
- Report.start_test(EditMenu_Default_UndoRedo)
|