mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-10-25 19:42:38 +00:00
[DB] run all Forgejo migrations in integration tests
The tests at tests/integration/migration-test/migration_test.go will not run any Forgejo migration when using the gitea-*.sql.gz files because they do not contain a ForgejoVersion row which is interpreted as a new Forgejo installation for which there is no need for migration. Create a situation by which the ForgejoVersion table exists and has a version of 0 in tests/integration/migration-test/forgejo-v1.19.0.*.sql.gz thus ensuring all Forgejo migrations are run. The forgejo*.sql.gz files do not have any Gitea related records, which will be interpreted by the Gitea migrations as a new installation that does not need any migration. As a consequence the migration tests run when using forgejo-v1.19.0.*.sql.gz are exclusively about Forgejo migrations. (cherry picked from commitec8003859c) (cherry picked from commit697570ff39) (cherry picked from commitf041aec172) (cherry picked from commit60463e3bab) (cherry picked from commitb2fc2a7c13) (cherry picked from commitfb2759b6af) (cherry picked from commit37cfc3b227) (cherry picked from commit832607500a) (cherry picked from commit143d4007b1) (cherry picked from commita17e803fbf)
This commit is contained in:
parent
72e47c3137
commit
5c1cc8d9f6
4 changed files with 5 additions and 2 deletions
|
|
@ -98,7 +98,7 @@ func availableVersions() ([]string, error) {
|
|||
return nil, err
|
||||
}
|
||||
defer migrationsDir.Close()
|
||||
versionRE, err := regexp.Compile("gitea-v(?P<version>.+)\\." + regexp.QuoteMeta(setting.Database.Type.String()) + "\\.sql.gz")
|
||||
versionRE, err := regexp.Compile(".*-v(?P<version>.+)\\." + regexp.QuoteMeta(setting.Database.Type.String()) + "\\.sql.gz")
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
@ -122,7 +122,10 @@ func readSQLFromFile(version string) (string, error) {
|
|||
filename := fmt.Sprintf("tests/integration/migration-test/gitea-v%s.%s.sql.gz", version, setting.Database.Type)
|
||||
|
||||
if _, err := os.Stat(filename); os.IsNotExist(err) {
|
||||
return "", nil
|
||||
filename = fmt.Sprintf("tests/integration/migration-test/forgejo-v%s.%s.sql.gz", version, setting.Database.Type)
|
||||
if _, err := os.Stat(filename); os.IsNotExist(err) {
|
||||
return "", nil
|
||||
}
|
||||
}
|
||||
|
||||
file, err := os.Open(filename)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue