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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggested imagehash rework option #4602

Closed

Conversation

wjbenfold
Copy link
Contributor

@wjbenfold wjbenfold commented Feb 24, 2022

馃殌 Pull Request

Description

Proposal of how to rework graphical testing, based on discussion on #4465.

For now, do people like this approach? Broadly:

  • imagerepo.json stores a list of known good files for each test, and the known hashes for each file.
  • If the hashes shift without the images changing, imagehash_update.py can be used to update imagerepo.json (which holds all historically known hashes as well as the current one).
  • If you've broken an image test, or matplotlib have updated and broken it, then you follow the old procedure for updating those (using idiff.py).

I envisage that you won't normally want to update imagehashes from dependency changes on a feature branch, and we'll instead do a quick fix branch then everyone can rebase to fix their graphical tests. We could put the functionality into test-iris-imagehash instead of Iris if that works better, though that would mean keeping imagerepo.json there instead so maybe not?

To do if people like the broad idea:

  • Update imagerepo.json to include the alternative names that images have in the test-iris-imagehash repo currently (v3 vs v4)
  • Finish changing idiff.py
  • Test it
  • Rename anything that wants renaming (e.g. the other repo, imagerepo.json)
  • Pull out shared functionality of idiff.py and imagehash_update.py or make them different modes of the same script
  • Update imagehash_update.py to use most sensible defaults, potentially pull images off the web etc.
  • Restructure test-iris-imagehash
  • Update documentation
  • What's new

Consult Iris pull request check list

@wjbenfold wjbenfold marked this pull request as draft February 24, 2022 16:46
@wjbenfold wjbenfold closed this May 9, 2022
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.

None yet

1 participant