Files
tokens-reef/backend/internal/server/routes/admin_routes_test.go
pham aafcaf4810
Some checks failed
CI / test (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
Security Scan / backend-security (push) Has been cancelled
Security Scan / frontend-security (push) Has been cancelled
remove deprecated data management admin routes
2026-04-20 22:33:29 +08:00

46 lines
1.2 KiB
Go

package routes
import (
"testing"
"github.com/Wei-Shaw/sub2api/internal/handler"
"github.com/Wei-Shaw/sub2api/internal/server/middleware"
"github.com/gin-gonic/gin"
"github.com/stretchr/testify/require"
)
func TestRegisterAdminRoutes_OmitsDeprecatedMockEndpoints(t *testing.T) {
gin.SetMode(gin.TestMode)
engine := gin.New()
v1 := engine.Group("/api/v1")
adminAuth := middleware.AdminAuthMiddleware(func(c *gin.Context) {
c.Next()
})
RegisterAdminRoutes(v1, &handler.Handlers{
Admin: &handler.AdminHandlers{},
}, adminAuth)
routesByMethodAndPath := make(map[string]struct{})
for _, route := range engine.Routes() {
routesByMethodAndPath[route.Method+" "+route.Path] = struct{}{}
}
deprecatedRoutes := []string{
"GET /api/v1/admin/dashboard/realtime",
"GET /api/v1/admin/groups/:id/stats",
"GET /api/v1/admin/users/:id/usage",
"GET /api/v1/admin/proxies/:id/stats",
"GET /api/v1/admin/redeem-codes/stats",
"GET /api/v1/admin/data-management/agent/health",
"GET /api/v1/admin/data-management/config",
"POST /api/v1/admin/data-management/backups",
}
for _, route := range deprecatedRoutes {
_, exists := routesByMethodAndPath[route]
require.Falsef(t, exists, "deprecated mock route should not be registered: %s", route)
}
}