package main import ( "os" "os/exec" "strings" "testing" ) func TestUnknownSubcommandExits(t *testing.T) { if os.Getenv("DISPATCH_CHILD") == "1" { os.Args = []string{"agent-system", "not-a-command"} main() return } cmd := exec.Command(os.Args[0], "-test.run=TestUnknownSubcommandExits") cmd.Env = append(os.Environ(), "DISPATCH_CHILD=1") out, err := cmd.CombinedOutput() if err == nil { t.Fatalf("未知子命令应非零退出:%s", out) } if !strings.Contains(string(out), "未知子命令") { t.Fatalf("输出:%s", out) } if strings.Contains(string(out), "agent-system starting") || strings.Contains(string(out), "serving") { t.Fatalf("未知子命令落入了服务路径:%s", out) } }