MCPcopy Create free account
hub / github.com/compozy/agh / TestParseRequiredBridgeJSONEnforcesObjectOrNull

Function TestParseRequiredBridgeJSONEnforcesObjectOrNull

internal/cli/bridge_test.go:573–607  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

571}
572
573func TestParseRequiredBridgeJSONEnforcesObjectOrNull(t *testing.T) {
574 t.Parallel()
575
576 validObject, err := parseRequiredBridgeJSON(`{"mode":"reply"}`)
577 if err != nil {
578 t.Fatalf("parseRequiredBridgeJSON(object) error = %v", err)
579 }
580 if string(*validObject) != `{"mode":"reply"}` {
581 t.Fatalf(
582 "parseRequiredBridgeJSON(object) = %s, want preserved object",
583 string(*validObject),
584 )
585 }
586
587 validNull, err := parseRequiredBridgeJSON(`null`)
588 if err != nil {
589 t.Fatalf("parseRequiredBridgeJSON(null) error = %v", err)
590 }
591 if string(*validNull) != "null" {
592 t.Fatalf("parseRequiredBridgeJSON(null) = %s, want null", string(*validNull))
593 }
594
595 for _, raw := range []string{`[]`, `"text"`, `123`} {
596 if _, err := parseRequiredBridgeJSON(
597 raw,
598 ); err == nil ||
599 !strings.Contains(err.Error(), "must be a JSON object or null") {
600 t.Fatalf(
601 "parseRequiredBridgeJSON(%s) error = %v, want object-or-null validation",
602 raw,
603 err,
604 )
605 }
606 }
607}
608
609func testBridgeRecord(t *testing.T) BridgeRecord {
610 t.Helper()

Callers

nothing calls this directly

Calls 3

parseRequiredBridgeJSONFunction · 0.85
ContainsMethod · 0.80
ErrorMethod · 0.45

Tested by

no test coverage detected