Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve NVDA Update Check URL testing to be more robust #17205

Open
SaschaCowley opened this issue Sep 23, 2024 · 2 comments
Open

Improve NVDA Update Check URL testing to be more robust #17205

SaschaCowley opened this issue Sep 23, 2024 · 2 comments
Labels
feature/update-check good first issue github features these at https://github.com/nvaccess/nvda/contribute p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.

Comments

@SaschaCowley
Copy link
Member

Steps to reproduce:

  1. Use an NVDA alpha that includes the update mirror functionality introduced in Add the ability to specify NVDA update check URL from within NVDA #17151.
  2. In NVDA's General settings, set the update mirror to a URL that resolves to a website, but which is not an NVDA update check mirror (or the NV Access NVDA update server).
  3. Press the "Test..." button.

Actual behavior:

NVDA reports that the test passed. However, when one attempts to check for NVDA updates, the check will fail as the URL that is now used does not return data that is meaningful in this context.

Expected behavior:

NVDA should report that the check failed.

Technical details

I believe the best way of implementing this is to add a minimal schema for NVDA update metadata to updateCheck.py, and extract the parsing logic from updateCheck.checkForUpdate into its own method. A validator option should be added to gui._SetURLDialog.SetURLDialog, so that a callable that parses and validates the received data can be added to instances of this dialog. A function that parses and validates update check data can then be passed into the set update mirror dialog.

NVDA logs, crash dumps and other attachments:

N/A

System configuration

NVDA installed/portable/running from source:

Installed or portable

NVDA version:

Any version after 05eb87a

Windows version:

N/A

Name and version of other software in use when reproducing the issue:

N/A

Other information about your system:

N/A

Other questions

Does the issue still occur after restarting your computer?

Yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

N/A

If NVDA add-ons are disabled, is your problem still occurring?

Yes

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

Yes

@seanbudd seanbudd added p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority good first issue github features these at https://github.com/nvaccess/nvda/contribute triaged Has been triaged, issue is waiting for implementation. feature/update-check labels Sep 23, 2024
@cary-rowen
Copy link
Contributor

add-on store URL also implement this validation?

@SaschaCowley
Copy link
Member Author

@cary-rowen Yes, that is the plan

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature/update-check good first issue github features these at https://github.com/nvaccess/nvda/contribute p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.
Projects
None yet
Development

No branches or pull requests

3 participants