initial version of regression test framework #1115
Draft
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.
This is a concept draft for regression testing. It was inspired by the
iden
regression going unnoticed.We do have unit testing, but it doesn't really exercise a lot of the functionality.
So this makes use of pytest (which is assumed installed - its a package on ubuntu) to do black-box testing. The main check at this stage is that heif-info produces the right result. There are a bunch of other things that could be tested.
Key decisions are:
A couple of other things I noticed:
heif-info --dump-boxes
puts the MIME type, main brand and compatible brand at the start when you are using it interactively, and at the end when redirected to a file (e.g. see the last three lines in any of the .dump files).--help
goes to stderr. That is probably OK for a mis-use, but might not be appropriate when requested, since its not really an error at this point.Thoughts / opinions welcome.