Files
bl/modules/config/model/boss_pet_test.go
xinian c021b40fbe
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat: 增强踢人逻辑与BOSS脚本支持
优化踢人超时处理和僵尸连接清理,支持BOSS动作脚本并增加测试,修复事件匹配与战斗循环中的并发问题。
2026-04-05 21:59:22 +08:00

45 lines
915 B
Go

package model
import "testing"
type testHookAction struct {
Allow bool
Round int
}
func TestBossConfigRunHookActionScript(t *testing.T) {
boss := &BossConfig{
Script: `
function hookAction(hookaction) {
return hookaction.Allow && hookaction.Round >= 2;
}
`,
}
ok, err := boss.RunHookActionScript(testHookAction{Allow: true, Round: 2})
if err != nil {
t.Fatalf("RunHookActionScript returned error: %v", err)
}
if !ok {
t.Fatalf("RunHookActionScript = false, want true")
}
}
func TestBossConfigRunHookActionScriptEmptyReturnDefaultsTrue(t *testing.T) {
boss := &BossConfig{
Script: `
function hookAction(hookaction) {
var _ = hookaction;
}
`,
}
ok, err := boss.RunHookActionScript(testHookAction{Allow: false, Round: 1})
if err != nil {
t.Fatalf("RunHookActionScript returned error: %v", err)
}
if !ok {
t.Fatalf("RunHookActionScript = false, want true")
}
}