Added test environment for mssql (#4282)
* Added test environment for m$sql * Added template for test environment for m$sql * Fix password * Fix password (again) * Fix password (again again) * Fix db * Ci trigger (Looking at you drone....) * Ci trigger (Looking at you drone....) * Ci trigger (Looking at you drone....) * Ci trigger (Looking at you drone....) * Create master database for mssql integration tests Signed-off-by: Jonas Franz <info@jonasfranz.software> * Create database only if master do not exist Signed-off-by: Jonas Franz <info@jonasfranz.software> * Fix mssql integration tests by using custom database "gitea" Signed-off-by: Jonas Franz <info@jonasfranz.software> * Moved defer * bump xorm * updated xorm * Fixed build
This commit is contained in:
parent
b1f3685015
commit
6db7dbd333
27 changed files with 383 additions and 66 deletions
|
@ -47,6 +47,8 @@ func TestMain(m *testing.M) {
|
|||
helper = &testfixtures.PostgreSQL{}
|
||||
} else if setting.UseSQLite3 {
|
||||
helper = &testfixtures.SQLite{}
|
||||
} else if setting.UseMSSQL {
|
||||
helper = &testfixtures.SQLServer{}
|
||||
} else {
|
||||
fmt.Println("Unsupported RDBMS for integration tests")
|
||||
os.Exit(1)
|
||||
|
@ -130,6 +132,17 @@ func initIntegrationTest() {
|
|||
if _, err = db.Exec("CREATE DATABASE testgitea"); err != nil {
|
||||
log.Fatalf("db.Exec: %v", err)
|
||||
}
|
||||
case setting.UseMSSQL:
|
||||
host, port := models.ParseMSSQLHostPort(models.DbCfg.Host)
|
||||
db, err := sql.Open("mssql", fmt.Sprintf("server=%s; port=%s; database=%s; user id=%s; password=%s;",
|
||||
host, port, "master", models.DbCfg.User, models.DbCfg.Passwd))
|
||||
if err != nil {
|
||||
log.Fatalf("sql.Open: %v", err)
|
||||
}
|
||||
if _, err := db.Exec("If(db_id(N'gitea') IS NULL) BEGIN CREATE DATABASE gitea; END;"); err != nil {
|
||||
log.Fatalf("db.Exec: %v", err)
|
||||
}
|
||||
defer db.Close()
|
||||
}
|
||||
routers.GlobalInit()
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue