Files
acc-server-manager/tests/mocks/auth_middleware_mock.go
Fran Jurmanović 4004d83411
All checks were successful
Release and Deploy / build (push) Successful in 9m5s
Release and Deploy / deploy (push) Successful in 26s
add step list for server creation
2025-09-18 22:24:51 +02:00

52 lines
1.1 KiB
Go

package mocks
import (
"acc-server-manager/local/middleware"
"time"
"github.com/gofiber/fiber/v2"
"github.com/google/uuid"
)
type MockAuthMiddleware struct{}
func NewMockAuthMiddleware() *MockAuthMiddleware {
return &MockAuthMiddleware{}
}
func (m *MockAuthMiddleware) Authenticate(ctx *fiber.Ctx) error {
mockUserID := uuid.New().String()
ctx.Locals("userID", mockUserID)
mockUserInfo := &middleware.CachedUserInfo{
UserID: mockUserID,
Username: "test_user",
RoleName: "Admin",
Permissions: map[string]bool{"*": true},
CachedAt: time.Now(),
}
ctx.Locals("userInfo", mockUserInfo)
ctx.Locals("authTime", time.Now())
return ctx.Next()
}
func (m *MockAuthMiddleware) HasPermission(requiredPermission string) fiber.Handler {
return func(ctx *fiber.Ctx) error {
return ctx.Next()
}
}
func (m *MockAuthMiddleware) AuthRateLimit() fiber.Handler {
return func(ctx *fiber.Ctx) error {
return ctx.Next()
}
}
func (m *MockAuthMiddleware) RequireHTTPS() fiber.Handler {
return func(ctx *fiber.Ctx) error {
return ctx.Next()
}
}