52 lines
1.4 KiB
Go
52 lines
1.4 KiB
Go
package config
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestLoadDefaults(t *testing.T) {
|
|
t.Setenv("ARIADNE_ENVIRONMENT", "")
|
|
t.Setenv("ARIADNE_HTTP_ADDRESS", "")
|
|
t.Setenv("ARIADNE_DATABASE_URL", "")
|
|
t.Setenv("ARIADNE_DATABASE_IDENTITY_URL", "")
|
|
t.Setenv("ARIADNE_DATABASE_MIGRATION_URL", "")
|
|
t.Setenv("ARIADNE_DATABASE_RUNTIME_ROLE", "")
|
|
t.Setenv("ARIADNE_DATABASE_IDENTITY_ROLE", "")
|
|
t.Setenv("ARIADNE_MIGRATION_LOCK_TIMEOUT", "")
|
|
t.Setenv("ARIADNE_IOP_ENDPOINT", "")
|
|
t.Setenv("ARIADNE_SHUTDOWN_TIMEOUT", "")
|
|
|
|
config, err := Load()
|
|
if err != nil {
|
|
t.Fatalf("Load() error = %v", err)
|
|
}
|
|
if config.Environment != "development" {
|
|
t.Fatalf("Environment = %q, want development", config.Environment)
|
|
}
|
|
if config.HTTPAddress != ":8080" {
|
|
t.Fatalf("HTTPAddress = %q, want :8080", config.HTTPAddress)
|
|
}
|
|
if config.ShutdownTimeout != 10*time.Second {
|
|
t.Fatalf("ShutdownTimeout = %v, want 10s", config.ShutdownTimeout)
|
|
}
|
|
if config.MigrationLockTimeout != 30*time.Second {
|
|
t.Fatalf("MigrationLockTimeout = %v, want 30s", config.MigrationLockTimeout)
|
|
}
|
|
}
|
|
|
|
func TestLoadRejectsInvalidShutdownTimeout(t *testing.T) {
|
|
t.Setenv("ARIADNE_SHUTDOWN_TIMEOUT", "later")
|
|
|
|
if _, err := Load(); err == nil {
|
|
t.Fatal("Load() expected an error")
|
|
}
|
|
}
|
|
|
|
func TestLoadRejectsInvalidMigrationLockTimeout(t *testing.T) {
|
|
t.Setenv("ARIADNE_MIGRATION_LOCK_TIMEOUT", "0s")
|
|
|
|
if _, err := Load(); err == nil {
|
|
t.Fatal("Load() expected an error")
|
|
}
|
|
}
|