-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
Description
As an user of the Script Generator in Ibex GUI, I am experiencing an error when trying to re-run a bunch of actions some of which were invalid and later corrected mid-run. While testing the Squish Tests noticed that the expected GUI transition is not happening in Script Generator.
Steps to replicate?
- Start Ibex GUI and click on Script Generator
- Select a Script Definitions file
- Click on Add to End to add multiple rows
- Check on "Invalid Actions are Paused"
- Make at least one invalid entry in the table
- Click Run. All the steps before the invalid entry should complete successfully. Then the execution should stop with a pause icon in the first column of the invalid entry.
- One would expect that at this moment, the Run button should change to Resume, once the user corrects the entry and click on Resume, the execution should continue from this entry onwards
- What actually is happening: 1. The Run button remains labelled "Run". 2. Clicking on it after correction yields nothing. 3. Clicking on the Pause button in the centre doesn't seem to have any effect. 4. The only way to proceed at this point it seems is to click on the Stop button and then hit the Run button again - but then it starts from the first action, ie, it is Re-run and not a Resume.
...
Additional Information
What else do I need to know before starting?
- We need to establish the exact flow and change of state of these buttons.
- A possible workflow is mentioned here, this may need refinement based on inputs from the experts:
- When a script definition file is loaded, the table should be blanked out and all the three buttons should be either disabled or have no effect if clicked.
- Once at least one action is added, at least the Run button should be enabled and work if clicked.
- If "Invalid Actions are Paused" is checked, and there is at least one invalid action, on click of Run, the valid actions get executed and halted as soon as the invalid action is encountered.
- In the above condition, a pause icon should be visible at the beginning of the offending row. Clicking Pause or Run should have no effect. Clicking on Stop should work as expected. One possibility is that the Run button is renamed Resume at this point (but not necessarily as Run becomes Resume when pause has been consciously clicked, so in this scenario it may not be needed).
- It should be possible to edit the invalid action. If it is a valid action now, clicking on Run should start from the current action onwards if Stop wasn't clicked earlier, or from the beginning as is expected for Stop button.
6. Irrespective of whatever is done above, if user selects another script definition, it should be possible to repeat the above flow for it and any other Script Generator functionality (Currently it appears that once we have gone through this flow the buttons don't work anymore unless we restart the GUI).
Acceptance Criteria
What is the acceptance criteria of this ticket? What should the reviewer expect to be complete?
- The code should follow the expected standards
- Building the GUI using the build.bat should work, also passing the Checkstyle requirements.
- All the functionalities of Script Generator should work
- Script Generator should be re-entrant. That is after any execution, with any combination of valid and invalid actions and with any sequence of button clicks, it must be possible to load another script definition file and perform all the necessary functions. Restarting the GUI must not be needed.
- Squish test cases are added to adequately cover the erroneous situation.
- Existing Squish Tests should pass unless requirements/implementation demands modification of some test case.
How to Review
Before making a PR...
- Check the Acceptance criteria
If not applicable, write "Not applicable"
...
To the reviewer: Make sure to update submodules!
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Backlog
Status
No status