mirror of
https://github.com/matrix-org/dendrite.git
synced 2026-01-06 21:53:09 -06:00
Skip tests that require a database if we can't connect to one
This commit is contained in:
parent
4ad5f9c982
commit
f0e1359723
12
test/db.go
12
test/db.go
|
|
@ -34,9 +34,9 @@ var DBTypePostgres DBType = 2
|
||||||
|
|
||||||
var Quiet = false
|
var Quiet = false
|
||||||
|
|
||||||
func createLocalDB(dbName string) {
|
func createLocalDB(t *testing.T, dbName string) {
|
||||||
if !Quiet {
|
if !Quiet {
|
||||||
fmt.Println("Note: tests require a postgres install accessible to the current user")
|
t.Log("Note: tests require a postgres install accessible to the current user")
|
||||||
}
|
}
|
||||||
createDB := exec.Command("createdb", dbName)
|
createDB := exec.Command("createdb", dbName)
|
||||||
if !Quiet {
|
if !Quiet {
|
||||||
|
|
@ -44,15 +44,15 @@ func createLocalDB(dbName string) {
|
||||||
createDB.Stderr = os.Stderr
|
createDB.Stderr = os.Stderr
|
||||||
}
|
}
|
||||||
err := createDB.Run()
|
err := createDB.Run()
|
||||||
if err != nil && !Quiet {
|
if err != nil {
|
||||||
fmt.Println("createLocalDB returned error:", err)
|
t.Skipf("createLocalDB returned error: %s", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func createRemoteDB(t *testing.T, dbName, user, connStr string) {
|
func createRemoteDB(t *testing.T, dbName, user, connStr string) {
|
||||||
db, err := sql.Open("postgres", connStr+" dbname=postgres")
|
db, err := sql.Open("postgres", connStr+" dbname=postgres")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("failed to open postgres conn with connstr=%s : %s", connStr, err)
|
t.Skipf("failed to open postgres conn with connstr=%s : %s", connStr, err)
|
||||||
}
|
}
|
||||||
_, err = db.Exec(fmt.Sprintf(`CREATE DATABASE %s;`, dbName))
|
_, err = db.Exec(fmt.Sprintf(`CREATE DATABASE %s;`, dbName))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -133,7 +133,7 @@ func PrepareDBConnectionString(t *testing.T, dbType DBType) (connStr string, clo
|
||||||
hash := sha256.Sum256([]byte(wd))
|
hash := sha256.Sum256([]byte(wd))
|
||||||
dbName := fmt.Sprintf("dendrite_test_%s", hex.EncodeToString(hash[:16]))
|
dbName := fmt.Sprintf("dendrite_test_%s", hex.EncodeToString(hash[:16]))
|
||||||
if postgresDB == "" { // local server, use createdb
|
if postgresDB == "" { // local server, use createdb
|
||||||
createLocalDB(dbName)
|
createLocalDB(t, dbName)
|
||||||
} else { // remote server, shell into the postgres user and CREATE DATABASE
|
} else { // remote server, shell into the postgres user and CREATE DATABASE
|
||||||
createRemoteDB(t, dbName, user, connStr)
|
createRemoteDB(t, dbName, user, connStr)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue