4.x - Fix snapshot migration tests. #648
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.
Hopefully this time for real. While it looked like the tests were working,
testMigrateSnapshots()
was actually only checking the very first snapshot file over and over again, as subsequent calls tomigrate()
will not re-read the migration files from disk, but use cached instances from the first call, and that call would only find the very first snapshot file in the list.The test now checks one file at a time instead of multiple ones, this is slower, but more reliable, and it makes it easier to figure which snapshot failed. Furthermore the snapshots are applied with the same feature flag config as they were created.
Other tests were changed to use a table with no foreign keys, as otherwise it would require altering a bunch of related tables, dropping and recreating foreign keys, the snapshots would be huge, making it easier for mistakes to slip through etc, when all we want to see is the auto-id behavior.