Isaiah Odhner
402b46c7df
Make failing to create a selector non-fatal
2023-09-11 18:02:20 -04:00
Isaiah Odhner
d6d9ddba67
Add a todo
2023-09-11 18:02:20 -04:00
Isaiah Odhner
9739422936
Show every event with comments in generated code
2023-09-11 18:02:20 -04:00
Isaiah Odhner
baa2b8cbc6
Fix batch undoing for drags
2023-09-11 18:02:20 -04:00
Isaiah Odhner
0e9f6d28a7
Implement recording/replaying drags
2023-09-11 18:02:20 -04:00
Isaiah Odhner
52f319da24
Refactor: split method
...
(This is probably pointless.)
2023-09-11 17:59:56 -04:00
Isaiah Odhner
82a5b201d4
WIP: make test recorder more generic to apps
2023-09-11 17:59:56 -04:00
Isaiah Odhner
2fb9e64c4f
DRY generated code with a helper function
2023-09-11 17:59:56 -04:00
Isaiah Odhner
b9503e44f4
This is somewhat more reliable (maybe just due to the delay....)
2023-09-11 17:59:56 -04:00
Isaiah Odhner
2a7b4412e1
Add docstrings, rename method
...
The new method name reflects the fact that it handles some input as commands, not just recording the events.
2023-09-11 17:59:56 -04:00
Isaiah Odhner
96ef2dfdff
Whitespace: organize imports
2023-09-11 17:59:56 -04:00
Isaiah Odhner
70284d6f94
Tweak comment about event recording
2023-09-11 17:59:56 -04:00
Isaiah Odhner
792d5c8294
Ignore duplicate events in a much less hacky way
...
Immediately reduce tech debt.
2023-09-11 17:59:56 -04:00
Isaiah Odhner
ea07b54315
Ignore every other event
...
It's the simplest thing that could possibly work.
And it does, as a matter of fact.
2023-09-11 17:59:56 -04:00
Isaiah Odhner
a10b9eac11
Allow Ctrl+Z also while replaying in test recorder
2023-09-11 17:59:56 -04:00
Isaiah Odhner
c395f4e8f3
Exit from test recorder on Ctrl+C after test saved
2023-09-11 17:59:55 -04:00
Isaiah Odhner
a2e1b6cfd8
Record events before they're handled normally
...
This might fix a race condition that lead to a `query` raising `NoMatches`, but this is just theoretical.
Regardless, this seems like the way to go.
Generating the selectors to match the clicked widget needs a view of the DOM before the widget is removed from it (or reordered in the DOM etc.)
2023-09-11 17:59:55 -04:00
Isaiah Odhner
61c9b4e49e
Fix undo seemingly not working
...
Stop recording mouse events that aren't even handled yet,
and which should be undone in batches when they are recorded.
2023-09-11 17:59:54 -04:00
Isaiah Odhner
941b2b52e6
Auto-save replay code for debugging purposes
2023-09-11 17:57:01 -04:00
Isaiah Odhner
43ae6f7365
Add assert for type checker
2023-09-11 17:56:03 -04:00
Isaiah Odhner
26f6bfe8ed
Convert test recorder to OOP
...
Never have I ever been this `self`-conscious...
2023-09-11 17:56:03 -04:00
Isaiah Odhner
c37a123be4
Add module docstring
2023-09-11 17:56:03 -04:00
Isaiah Odhner
bef86c95bc
Clean up
2023-09-11 17:56:03 -04:00
Isaiah Odhner
78e86f1bc1
Enable recording key events
2023-09-11 17:56:03 -04:00
Isaiah Odhner
3cebba06ec
WIP: handle edge cases
2023-09-11 17:56:03 -04:00
Isaiah Odhner
2fb0dc2467
Good progress on stepwise undo (+gaurd against NoWidget)
2023-09-11 17:56:03 -04:00
Isaiah Odhner
8a2f4d6b72
WIP on stepwise undo app lifecycle
...
No error... until 30s passes.
WaitForScreenTimeout: Timed out while waiting for widgets to process pending messages.
2023-09-11 17:56:03 -04:00
Isaiah Odhner
74c3c49eb7
WIP on stepwise undo app lifecycle spaghetti code
2023-09-11 17:56:03 -04:00
Isaiah Odhner
961e9a1560
WIP trying to get stepwise undo working (and complicating things)
2023-09-11 17:56:03 -04:00
Isaiah Odhner
8838250e94
WIP on test recorder click offsets
2023-09-11 17:56:03 -04:00
Isaiah Odhner
24b9b9986c
WIP on test recorder
2023-09-11 17:56:03 -04:00
Isaiah Odhner
0c43b7ff5a
WIP: Make test recorder for Pilot tests
2023-09-11 17:56:03 -04:00