package fwh_mqtt import ( "context" "fwh-toolbox-server/config" "fwh-toolbox-server/dto" "testing" ) func TestParseEnv(t *testing.T) { cases := []struct { in string want Env wantErr bool }{ {"", EnvProd, false}, {"prod", EnvProd, false}, {"test", EnvTest, false}, {"TEST", "", true}, {"dev", "", true}, } for _, c := range cases { got, err := ParseEnv(c.in) if (err != nil) != c.wantErr || got != c.want { t.Errorf("ParseEnv(%q) = %q, %v; want %q, err=%v", c.in, got, err, c.want, c.wantErr) } } } func TestUninitializedEnvReturnsError(t *testing.T) { // 未初始化的环境不应 panic,应返回错误 if err := FaultRecordParamSetting(context.Background(), EnvTest, dto.FaultRecordParamInfo{Sn: "X"}); err == nil { t.Fatal("expected error for uninitialized env") } } func TestInitWithoutBrokerFails(t *testing.T) { if err := InitFwhMqttClient(EnvTest, &config.FwhMqttConfig{}); err == nil { t.Fatal("expected error when broker not configured") } if _, err := getFwhMqttClient(EnvTest); err == nil { t.Fatal("client should not be registered after failed init") } }