Files
OpenFlare/backend/plugins/domain/risk_control/plugin_test.go
T
ryan 43dc97e48c refactor(layout): consolidate backend codebase into backend/ package and clean root directory
- Moved cmd/, core/, plugins/, pkg/, downstream/, and main.go into backend/ directory
- Batch updated all Go source files to import github.com/Rain-kl/Wavelet/backend/...
- Updated Makefile, scripts/swagger.sh, architecture guards, and platform skills
- Passed all quality gates (100% tests, 0 lint issues, clean build)
2026-08-28 12:56:02 +08:00

43 lines
1.1 KiB
Go

// Copyright 2026 Arctel.net
// SPDX-License-Identifier: Apache-2.0
package risk_control_test
import (
"context"
"testing"
"github.com/gin-gonic/gin"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"github.com/Rain-kl/Wavelet/backend/core"
"github.com/Rain-kl/Wavelet/backend/plugins/domain/risk_control"
)
func TestRiskControlPluginUnit(t *testing.T) {
ctx := core.NewContext(context.Background())
var customMWCalled bool
customMW := func(c *gin.Context) {
customMWCalled = true
c.Next()
}
p := risk_control.New(risk_control.WithMiddleware(customMW))
assert.Equal(t, "risk_control", p.Name())
assert.Equal(t, "1.0.0", p.Manifest().Version)
require.NoError(t, p.Apply(ctx))
// Verify middlewares registered
mws := ctx.Router().Middlewares()
assert.NotEmpty(t, mws)
// Verify settings
setting, ok := ctx.Settings().Get("risk_control.enable_access_log")
require.True(t, ok)
assert.Equal(t, true, setting.Default)
require.NoError(t, ctx.Dispose())
assert.False(t, customMWCalled) // not dispatched via gin engine here
}