38 lines
970 B
Go
38 lines
970 B
Go
package router
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
jwt "github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth"
|
|
)
|
|
|
|
func TestRegisterBaseRouterExposesOnlyFrontendAppConfig(t *testing.T) {
|
|
gin.SetMode(gin.TestMode)
|
|
engine := gin.New()
|
|
registerBaseRouter(engine.Group("/api/v1"), &jwt.GinJWTMiddleware{})
|
|
|
|
routes := make(map[string]struct{})
|
|
for _, route := range engine.Routes() {
|
|
routes[route.Method+" "+route.Path] = struct{}{}
|
|
}
|
|
|
|
if _, ok := routes["GET /api/v1/app-config"]; !ok {
|
|
t.Fatal("anonymous frontend app-config route is not registered")
|
|
}
|
|
for _, disabled := range []string{
|
|
"GET /api/v1/config",
|
|
"POST /api/v1/config",
|
|
"GET /api/v1/config/:id",
|
|
"PUT /api/v1/config/:id",
|
|
"DELETE /api/v1/config",
|
|
"GET /api/v1/configKey/:configKey",
|
|
"GET /api/v1/set-config",
|
|
"PUT /api/v1/set-config",
|
|
} {
|
|
if _, ok := routes[disabled]; ok {
|
|
t.Fatalf("disabled system-configuration route was registered: %s", disabled)
|
|
}
|
|
}
|
|
}
|