From c4088681136e469d8ea3a01da5bcdf890173179c Mon Sep 17 00:00:00 2001 From: ila <2+ila@noreply.git.ilapage.cn> Date: Thu, 13 Aug 2026 12:42:05 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=87=AA=E5=8A=A8=E5=BB=BA=E7=AB=8B?= =?UTF-8?q?=E5=AE=9E=E6=97=B6=E7=9B=91=E7=9C=8B=E5=AA=92=E4=BD=93=E8=B7=AF?= =?UTF-8?q?=E5=BE=84=20(#51)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Sense/server/app/sense/admission/service_test.go | 9 +++++++++ 1 file changed, 9 insertions(+) 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) {