diff --git a/Sense/server/app/sense/admission/service_test.go b/Sense/server/app/sense/admission/service_test.go index 1463e62..8488d73 100644 --- a/Sense/server/app/sense/admission/service_test.go +++ b/Sense/server/app/sense/admission/service_test.go @@ -78,6 +78,12 @@ func TestProbeUsesSeparateCredentialsPersistsProfilesAndActivatesDevice(t *testi rtspVerifier := &credentialCapturingRTSP{} store := NewMemoryStore() service := NewService(onvifClient, rtspVerifier, "", store) + service.SetReadyHandler(func(_ context.Context, _ identity.Principal, result Result) MediaOutcome { + if len(result.Profiles) != 2 { + t.Fatalf("ready handler profiles=%d", len(result.Profiles)) + } + return MediaOutcome{Status: "needs_attention", Detail: "媒体服务未就绪"} + }) result, err := service.Probe(context.Background(), identity.Principal{}, item.ID, "http://camera.invalid/onvif/device_service") if err != nil { t.Fatal(err) @@ -85,6 +91,9 @@ func TestProbeUsesSeparateCredentialsPersistsProfilesAndActivatesDevice(t *testi if onvifClient.got.Username != "onvif-user" || rtspVerifier.got.Username != "rtsp-user" { t.Fatal("credentials were not separated") } + if result.MediaStatus != "needs_attention" { + t.Fatalf("media outcome=%#v", result) + } restarted := NewService(onvifClient, rtspVerifier, "", store) persisted, ok := restarted.Get(item.ID) if !ok || len(persisted.Profiles) != len(result.Profiles) {