feat(t226): add Go ERP session login
This commit is contained in:
@@ -52,6 +52,17 @@ func TestLoadUsesSafeDefaults(t *testing.T) {
|
||||
cfg.ERPConnectorTimeout,
|
||||
)
|
||||
}
|
||||
if cfg.ShunyunbaoURL != "https://www.shunyunbaoerp.com" ||
|
||||
cfg.ShunyunbaoUsername != "" || cfg.ShunyunbaoPassword != "" ||
|
||||
cfg.ShunyunbaoTimeout != 30*time.Second {
|
||||
t.Fatalf(
|
||||
"shunyunbao defaults = %q / %q / %q / %s",
|
||||
cfg.ShunyunbaoURL,
|
||||
cfg.ShunyunbaoUsername,
|
||||
cfg.ShunyunbaoPassword,
|
||||
cfg.ShunyunbaoTimeout,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
func TestLoadAcceptsExplicitConfiguration(t *testing.T) {
|
||||
@@ -66,6 +77,9 @@ func TestLoadAcceptsExplicitConfiguration(t *testing.T) {
|
||||
ReadinessTTLEnvironment: "3m",
|
||||
ERPConnectorURLEnvironment: "http://localhost:18091",
|
||||
ERPConnectorAPIKeyEnvironment: "12345678901234567890123456789012",
|
||||
ShunyunbaoURLEnvironment: "https://erp.example.test:8443",
|
||||
ShunyunbaoUsernameEnvironment: "service-user",
|
||||
ShunyunbaoPasswordEnvironment: " pass with spaces ",
|
||||
}
|
||||
|
||||
cfg, err := Load(mapEnvironment(values))
|
||||
@@ -108,6 +122,11 @@ func TestLoadAcceptsExplicitConfiguration(t *testing.T) {
|
||||
cfg.ERPConnectorAPIKey,
|
||||
)
|
||||
}
|
||||
if cfg.ShunyunbaoURL != values[ShunyunbaoURLEnvironment] ||
|
||||
cfg.ShunyunbaoUsername != values[ShunyunbaoUsernameEnvironment] ||
|
||||
cfg.ShunyunbaoPassword != values[ShunyunbaoPasswordEnvironment] {
|
||||
t.Fatalf("shunyunbao config was not preserved")
|
||||
}
|
||||
}
|
||||
|
||||
func TestLoadRejectsUnsafeOrInvalidValues(t *testing.T) {
|
||||
@@ -133,6 +152,30 @@ func TestLoadRejectsUnsafeOrInvalidValues(t *testing.T) {
|
||||
ERPConnectorAPIKeyEnvironment: "short",
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "non HTTPS shunyunbao URL",
|
||||
values: map[string]string{
|
||||
ShunyunbaoURLEnvironment: "http://erp.example.test",
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "shunyunbao URL path",
|
||||
values: map[string]string{
|
||||
ShunyunbaoURLEnvironment: "https://erp.example.test/private",
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "shunyunbao username without password",
|
||||
values: map[string]string{
|
||||
ShunyunbaoUsernameEnvironment: "service-user",
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "shunyunbao password without username",
|
||||
values: map[string]string{
|
||||
ShunyunbaoPasswordEnvironment: "password",
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "blank explicit address",
|
||||
values: map[string]string{
|
||||
|
||||
Reference in New Issue
Block a user