Skip to content

Fix the mutation setting of hierarchy-inert commands#3232

Open
Fishbowler wants to merge 1 commit intomainfrom
mutations-fix
Open

Fix the mutation setting of hierarchy-inert commands#3232
Fishbowler wants to merge 1 commit intomainfrom
mutations-fix

Conversation

@Fishbowler
Copy link
Copy Markdown
Contributor

Proposed changes

Performance improvement.

Maestro performs assertions like assertNotVisible based on a timer tied to the last command that altered the hierarchy. We track that through a return value on a command that indicates whether the command mutated the hierarchy (or may have).

This change updates a few inert commands, marking them as non-mutating, which will speed up assertions that immediately follow them.

In the below example, assertNotVisible's timer should be from the tapOn, not from the last copyTextFrom.

- tapOn: Remove Foo
- copyTextFrom:
    id: thing1
- copyTextFrom:
    id: thing2
- copyTextFrom:
    id: thing3
- assertNotVisible: Foo

I've added comments on justifications, so that the next person visiting this code might be able to think a little less about these :)

Testing

e2e 🤞

Issues fixed

Fixes #3117

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Cautious command mutation settings are causing delays

1 participant