feat: 自动建立实时监看媒体路径 (#51)
This commit is contained in:
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user