fix: 完成商务迁移复核与接口优化并清理历史资料
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
package config
|
||||
|
||||
import "strings"
|
||||
|
||||
// SwaggerEnabled exposes API documentation only in explicitly selected local/test environments.
|
||||
func SwaggerEnabled(admin *Admin) bool {
|
||||
if admin == nil || admin.App == nil {
|
||||
return false
|
||||
}
|
||||
switch strings.ToLower(strings.TrimSpace(admin.App.Env)) {
|
||||
case "development", "dev", "test", "local":
|
||||
return true
|
||||
default:
|
||||
return false
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package config
|
||||
|
||||
import "testing"
|
||||
|
||||
func TestSwaggerRequiresExplicitDevelopmentEnvironment(t *testing.T) {
|
||||
if SwaggerEnabled(nil) || SwaggerEnabled(&Admin{}) {
|
||||
t.Fatal("missing environment exposed Swagger")
|
||||
}
|
||||
for _, env := range []string{"", "production", "prod", "staging", "qa", "uat", "unknown"} {
|
||||
if SwaggerEnabled(&Admin{App: &App{Env: env}}) {
|
||||
t.Errorf("Swagger enabled in %q", env)
|
||||
}
|
||||
}
|
||||
for _, env := range []string{"development", "dev", "test", "local", " DEV "} {
|
||||
if !SwaggerEnabled(&Admin{App: &App{Env: env}}) {
|
||||
t.Errorf("Swagger disabled in %q", env)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user