Files
xuanzhi-service/server/source/system/api_test.go
wdh-home 1e33640629
Some checks failed
CI / init (pull_request) Has been cancelled
CI / Frontend node 18.16.0 (pull_request) Has been cancelled
CI / Backend go (1.22) (pull_request) Has been cancelled
CI / release-pr (pull_request) Has been cancelled
CI / devops-test (1.22, 18.16.0) (pull_request) Has been cancelled
CI / release-please (pull_request) Has been cancelled
CI / devops-prod (1.22, 18.x) (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
基础项目
2026-04-26 15:32:21 +08:00

31 lines
912 B
Go

package system
import (
"context"
"testing"
sysModel "github.com/flipped-aurora/gin-vue-admin/server/model/system"
"github.com/glebarez/sqlite"
"github.com/stretchr/testify/require"
"gorm.io/gorm"
)
func TestInitApiIncludesApiRoleManagementEndpoints(t *testing.T) {
db, err := gorm.Open(sqlite.Open(":memory:"), &gorm.Config{})
require.NoError(t, err)
require.NoError(t, db.AutoMigrate(&sysModel.SysApi{}))
_, err = (&initApi{}).InitializeData(context.WithValue(context.Background(), "db", db))
require.NoError(t, err)
requiredApis := []sysModel.SysApi{
{Path: "/api/getApiRoles", Method: "GET"},
{Path: "/api/setApiRoles", Method: "POST"},
}
for _, api := range requiredApis {
var count int64
require.NoError(t, db.Model(&sysModel.SysApi{}).Where("path = ? AND method = ?", api.Path, api.Method).Count(&count).Error)
require.Equalf(t, int64(1), count, "missing api: %+v", api)
}
}