fix: Fix for spurious test failures. #410
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.
We've been seeing intermittent apiv2 test failures in our pull requests.
We use a test fixture library called
factory_boy
to generate semi-randomized database rows in our tests. This tool works great, when it's configured properly! However we were generating object ID's like so:This tells the test fixture to use a random number between 1 and 1000 for each object ID. Our tests were failing sporadically because sometimes when we told the fixture to make a batch of N rows, some of those rows would get generated with the same identifier, and get collapsed into a single row!
This PR updates the fixture configuration to use factory_boy's Sequences functionality to generate sequential ID's instead of random ID's, and should hopefully 🤞 make our tests more reliable.