// Package harness 提供集成测试启动器。 package harness // Info 是命令行启动器打印到 stdout 的连接信息。 type Info struct { Listen string `json:"listen"` HTTPBase string `json:"http_base"` AdminListen string `json:"admin_listen,omitempty"` AdminHTTPBase string `json:"admin_http_base"` MQTTWS string `json:"mqtt_ws"` MQTTTCP string `json:"mqtt_tcp"` AdminPassword string `json:"admin_password"` DataDir string `json:"data_dir"` ConfigPath string `json:"config_path"` } // ConnectionInfo 组装给外部语言测试用的 JSON 结构。 func (s *Server) ConnectionInfo() Info { adminBase := s.AdminHTTPBase if adminBase == "" { adminBase = s.HTTPBase } return Info{ Listen: s.Addr, HTTPBase: s.HTTPBase, AdminListen: s.AdminAddr, AdminHTTPBase: adminBase, MQTTWS: "ws://" + s.Addr + "/mqtt", MQTTTCP: s.Addr, AdminPassword: s.AdminPassword, DataDir: s.DataDir, ConfigPath: s.ConfigPath, } }