package transport import ( "testing" toki "git.toki-labs.com/toki/common-proto-socket/go" "google.golang.org/protobuf/proto" iop "iop/proto/gen/iop" ) func TestNodeParserMap_RunRequest(t *testing.T) { parsers := nodeParserMap() original := &iop.RunRequest{RunId: "run-1", Adapter: "mock", Model: "v1"} payload, err := proto.Marshal(original) if err != nil { t.Fatalf("marshal: %v", err) } parsed, err := parsers[toki.TypeNameOf(original)](payload) if err != nil { t.Fatalf("parse: %v", err) } got := parsed.(*iop.RunRequest) if got.GetRunId() != original.GetRunId() || got.GetAdapter() != original.GetAdapter() || got.GetModel() != original.GetModel() { t.Fatalf("unexpected run request: %+v", got) } } func TestNodeParserMap_CancelRequest(t *testing.T) { parsers := nodeParserMap() original := &iop.CancelRequest{RunId: "run-1"} payload, err := proto.Marshal(original) if err != nil { t.Fatalf("marshal: %v", err) } parsed, err := parsers[toki.TypeNameOf(original)](payload) if err != nil { t.Fatalf("parse: %v", err) } got := parsed.(*iop.CancelRequest) if got.GetRunId() != original.GetRunId() { t.Fatalf("unexpected cancel request: %+v", got) } } func TestNodeParserMap_CapabilityRequest(t *testing.T) { parsers := nodeParserMap() original := &iop.CapabilityRequest{} payload, err := proto.Marshal(original) if err != nil { t.Fatalf("marshal: %v", err) } parsed, err := parsers[toki.TypeNameOf(original)](payload) if err != nil { t.Fatalf("parse: %v", err) } if _, ok := parsed.(*iop.CapabilityRequest); !ok { t.Fatalf("unexpected capability request type: %T", parsed) } }