Files
query-orchestration/internal/serviceconfig/database/config_test.go
T
Michael McGuinness 92334ad1dd Merged in feature/s3integration (pull request #47)
Set Up S3 integration

* cfginterfaceandfirsts3funcs

* addlocalstack

* generallypassesfullsuite

* addedmultipleattemptedpings

* cleanup

* stabiliseplusskip
2025-02-05 12:52:41 +00:00

140 lines
2.7 KiB
Go

package database_test
import (
"queryorchestration/internal/serviceconfig/database"
"testing"
"github.com/stretchr/testify/assert"
)
func TestGetDBOpts(t *testing.T) {
cfg := database.DBConfig{}
opts := cfg.GetDBOpts()
assert.Equal(t, map[string]string{}, opts)
cfg.DBNoSSL = true
opts = cfg.GetDBOpts()
assert.Equal(t, map[string]string{"sslmode": "disable"}, opts)
}
func TestGetDBOptsString(t *testing.T) {
cfg := database.DBConfig{}
opts := cfg.GetDBOptsString()
assert.Equal(t, "", opts)
cfg.DBNoSSL = true
opts = cfg.GetDBOptsString()
assert.Equal(t, "sslmode=disable", opts)
}
func TestGetDBDriver(t *testing.T) {
cfg := database.DBConfig{}
driver := cfg.GetDBDriver()
assert.Equal(t, "postgres", driver)
}
func TestGetDBBaseURI(t *testing.T) {
cfg := database.DBConfig{}
uri := cfg.GetDBBaseURI()
assert.Equal(t, "postgres://:@:0/", uri)
cfg.DBHost = "host"
cfg.DBPort = 123
cfg.DBUser = "user"
cfg.DBSecret = "pass"
uri = cfg.GetDBBaseURI()
assert.Equal(t, "postgres://user:pass@host:123/", uri)
}
func TestGetDBURI(t *testing.T) {
cfg := database.DBConfig{}
uri := cfg.GetDBURI()
assert.Equal(t, "postgres://:@:0/?", uri)
cfg.DBHost = "host"
cfg.DBPort = 123
cfg.DBUser = "user"
cfg.DBSecret = "pass"
cfg.DBName = "name"
cfg.DBNoSSL = true
uri = cfg.GetDBURI()
assert.Equal(t, "postgres://user:pass@host:123/name?sslmode=disable", uri)
}
func TestGetDBHost(t *testing.T) {
cfg := database.DBConfig{}
name := cfg.GetDBHost()
assert.Equal(t, "", name)
cfg.DBHost = "name"
name = cfg.GetDBHost()
assert.Equal(t, "name", name)
assert.Equal(t, cfg.DBHost, name)
}
func TestGetDBPort(t *testing.T) {
cfg := database.DBConfig{}
name := cfg.GetDBPort()
assert.Equal(t, 0, name)
cfg.DBPort = 8080
name = cfg.GetDBPort()
assert.Equal(t, 8080, name)
assert.Equal(t, cfg.DBPort, name)
}
func TestGetDBUser(t *testing.T) {
cfg := database.DBConfig{}
name := cfg.GetDBUser()
assert.Equal(t, "", name)
cfg.DBUser = "name"
name = cfg.GetDBUser()
assert.Equal(t, "name", name)
assert.Equal(t, cfg.DBUser, name)
}
func TestGetDBSecret(t *testing.T) {
cfg := database.DBConfig{}
name := cfg.GetDBSecret()
assert.Equal(t, "", name)
cfg.DBSecret = "name"
name = cfg.GetDBSecret()
assert.Equal(t, "name", name)
assert.Equal(t, cfg.DBSecret, name)
}
func TestIsDBNoSSL(t *testing.T) {
cfg := database.DBConfig{}
name := cfg.IsDBNoSSL()
assert.False(t, name)
cfg.DBNoSSL = true
name = cfg.IsDBNoSSL()
assert.True(t, name)
assert.Equal(t, cfg.DBNoSSL, name)
}
func TestGetDBName(t *testing.T) {
cfg := database.DBConfig{}
name := cfg.GetDBName()
assert.Equal(t, "", name)
cfg.DBName = "name"
name = cfg.GetDBName()
assert.Equal(t, "name", name)
assert.Equal(t, cfg.DBName, name)
}