feat(config): схема URL в meta зависит от TLS_ENABLED
- при установке без TLS (--skip-tls, стенд без домена) клиент получает http:// и ws:// вместо неработающих https:// и wss:// - установщик пишет TLS_ENABLED в .env; тесты фиксируют обе схемы
This commit is contained in:
@@ -18,6 +18,7 @@ func TestLoadDefaults(t *testing.T) {
|
||||
t.Setenv("APP_VERSION", "")
|
||||
t.Setenv("APP_COMMIT", "")
|
||||
t.Setenv("APP_BUILD_DATE", "")
|
||||
t.Setenv("TLS_ENABLED", "")
|
||||
|
||||
cfg, err := Load()
|
||||
if err != nil {
|
||||
@@ -44,6 +45,12 @@ func TestLoadDefaults(t *testing.T) {
|
||||
if cfg.Version != "dev" {
|
||||
t.Errorf("Version = %q, want dev", cfg.Version)
|
||||
}
|
||||
if !cfg.TLSEnabled {
|
||||
t.Error("TLSEnabled = false, want true by default")
|
||||
}
|
||||
if cfg.BaseURL() != "https://localhost" {
|
||||
t.Errorf("BaseURL() = %q", cfg.BaseURL())
|
||||
}
|
||||
if cfg.LogLevelNumeric() != 0 {
|
||||
t.Errorf("LogLevelNumeric() = %d, want 0 for info", cfg.LogLevelNumeric())
|
||||
}
|
||||
@@ -62,6 +69,7 @@ func TestLoadEnvOverrides(t *testing.T) {
|
||||
t.Setenv("APP_VERSION", "v0.1.0")
|
||||
t.Setenv("APP_COMMIT", "abc1234")
|
||||
t.Setenv("SHUTDOWN_TIMEOUT_SECONDS", "5")
|
||||
t.Setenv("TLS_ENABLED", "false")
|
||||
|
||||
cfg, err := Load()
|
||||
if err != nil {
|
||||
@@ -88,12 +96,15 @@ func TestLoadEnvOverrides(t *testing.T) {
|
||||
if cfg.LogFormat != "text" {
|
||||
t.Errorf("LogFormat = %q", cfg.LogFormat)
|
||||
}
|
||||
if cfg.BaseURL() != "https://gl.mhspx.su" {
|
||||
if cfg.BaseURL() != "http://gl.mhspx.su" {
|
||||
t.Errorf("BaseURL() = %q", cfg.BaseURL())
|
||||
}
|
||||
if cfg.FilesURL() != "https://files.gl.mhspx.su" {
|
||||
if cfg.FilesURL() != "http://files.gl.mhspx.su" {
|
||||
t.Errorf("FilesURL() = %q", cfg.FilesURL())
|
||||
}
|
||||
if cfg.GatewayURL() != "ws://gl.mhspx.su/gateway" {
|
||||
t.Errorf("GatewayURL() = %q", cfg.GatewayURL())
|
||||
}
|
||||
}
|
||||
|
||||
func TestLoadRejectsInvalidValues(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user