package device import "testing" func TestDeviceRejectsCredentialsInEndpointReference(t *testing.T) { t.Parallel() value := validVideoDevice() value.EndpointRef = "http://" + "user" + ":" + "redacted" + "@camera.invalid/onvif" if err := value.Validate(); err == nil { t.Fatal("expected endpoint credentials to be rejected") } } func TestDeviceRejectsUnsafeMediaPath(t *testing.T) { t.Parallel() value := validVideoDevice() value.PathName = "tenant/../another-camera" if err := value.Validate(); err == nil { t.Fatal("expected unsafe path name to be rejected") } } func validVideoDevice() Device { return Device{ ID: "camera", TenantID: "tenant", SiteID: "site", SerialNumber: "serial", Name: "Camera", Modality: ModalityVideo, Capabilities: []Capability{CapabilityVideoCapture}, DesiredState: DesiredEnabled, ActualState: ActualPending, EndpointRef: "onvif://camera", PathName: "sense/tenant/site/camera", } }