Draft: exclude Go test files from migrations #474
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.
Database migrations reflect a critical part of an application's workflow. Adding tests for individual migrations following Golang's best practices of reusing the original source file name + appending
*_test.go
seems to be a reasonable choice.However, reusing an existing file name that starts with a given numeric value and an underscore will cause problems with Goose, as the migration collector treats it as a regular migrations file, hence failing with:
This change suggests to blocklist any Go source files ending with the suffix
*_test.go
in order to mitigate this issue. The naming convention for Go migration files is also mentioned in the README.