Fix system tests for source copies of NVDA #13322
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Link to issue number:
None - Fixes regression introduced in PR #12075
Summary of the issue:
When executing system tests ensuring that NVDA starts and exits correctly we rely on the status of its process i.e. when the process is running NVDA is supposed to be running. While this works well for installed copies source copies are not started directly rather intermediate .bat file is used to start pythonw in a separate process. As a consequence when trying to retrieve status of an NVDA process during tests we get wrong results (the bat file is never running).
Description of how this pull request fixes the issue:
To avoid relying on the state of the process system tests use the NVDA's message window to determine if NVDA is running or not.
Testing strategy:
System tests passes both locally against a source copy and on AppVeyor against a binary one.
Known issues with pull request:
None known
Change log entries:
None needed.
Code Review Checklist: