MCPcopy
hub / github.com/ory/keto / assembleQueryFlags

Method assembleQueryFlags

internal/e2e/cli_client_test.go:54–79  ·  view source on GitHub ↗
(q *ketoapi.RelationQuery, opts []paginationOptionSetter)

Source from the content-addressed store, hash-verified

52}
53
54func (g *cliClient) assembleQueryFlags(q *ketoapi.RelationQuery, opts []paginationOptionSetter) []string {
55 var flags []string
56 if q.Namespace != nil {
57 flags = append(flags, "--"+clirelationtuple.FlagNamespace, *q.Namespace)
58 }
59 if q.SubjectID != nil {
60 flags = append(flags, "--"+clirelationtuple.FlagSubjectID, *q.SubjectID)
61 }
62 if q.SubjectSet != nil {
63 flags = append(flags, "--"+clirelationtuple.FlagSubjectSet, q.SubjectSet.String())
64 }
65 if q.Relation != nil {
66 flags = append(flags, "--"+clirelationtuple.FlagRelation, *q.Relation)
67 }
68 if q.Object != nil {
69 flags = append(flags, "--"+clirelationtuple.FlagObject, *q.Object)
70 }
71 pagination := getPaginationOptions(opts...)
72 if pagination.Token != "" {
73 flags = append(flags, "--"+clirelationtuple.FlagPageToken, pagination.Token)
74 }
75 if pagination.Size != 0 {
76 flags = append(flags, "--"+clirelationtuple.FlagPageSize, strconv.Itoa(pagination.Size))
77 }
78 return flags
79}
80
81func (g *cliClient) queryTuple(t testing.TB, q *ketoapi.RelationQuery, opts ...paginationOptionSetter) *ketoapi.GetResponse {
82 out := g.c.ExecNoErr(t, append(g.assembleQueryFlags(q, opts), "relation-tuple", "get")...)

Callers 3

queryTupleMethod · 0.95
queryTupleErrMethod · 0.95
deleteAllTuplesMethod · 0.95

Calls 2

getPaginationOptionsFunction · 0.85
StringMethod · 0.65

Tested by

no test coverage detected