Skip to content

Commit

Permalink
adapt changed function signatures
Browse files Browse the repository at this point in the history
  • Loading branch information
wkloucek committed Nov 19, 2021
1 parent 63f74b1 commit 32ffbe3
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 12 deletions.
2 changes: 1 addition & 1 deletion accounts/pkg/service/v0/accounts.go
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,7 @@ func (s Service) ListAccounts(ctx context.Context, in *proto.ListAccountsRequest
}

func (s Service) findAccountsByQuery(ctx context.Context, query string) ([]string, error) {
return s.index.Query(&proto.Account{}, query)
return s.index.Query(ctx, &proto.Account{}, query)
}

// GetAccount implements the AccountsServiceHandler interface
Expand Down
2 changes: 1 addition & 1 deletion accounts/pkg/service/v0/groups.go
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ func (s Service) ListGroups(ctx context.Context, in *proto.ListGroupsRequest, ou
return
}
func (s Service) findGroupsByQuery(ctx context.Context, query string) ([]string, error) {
return s.index.Query(&proto.Group{}, query)
return s.index.Query(ctx, &proto.Group{}, query)
}

// GetGroup implements the GroupsServiceHandler interface
Expand Down
2 changes: 1 addition & 1 deletion graph/pkg/service/v0/drives.go
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,7 @@ func (g Graph) UpdateDrive(w http.ResponseWriter, r *http.Request) {
//https://github.com/CiscoM31/godata/blob/d70e191d2908191623be84401fecc40d6af4afde/url_parser_test.go#L10
sanitized := strings.TrimPrefix(r.URL.Path, "/graph/v1.0/")

req, err := godata.ParseRequest(sanitized, r.URL.Query(), true)
req, err := godata.ParseRequest(r.Context(), sanitized, r.URL.Query())
if err != nil {
errorcode.GeneralException.Render(w, r, http.StatusBadRequest, err.Error())
return
Expand Down
9 changes: 5 additions & 4 deletions ocis-pkg/indexer/indexer.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
package indexer

import (
"context"
"fmt"
"path"
"strings"
Expand Down Expand Up @@ -255,8 +256,8 @@ func (i *Indexer) Update(from, to interface{}) error {
}

// Query parses an OData query into something our indexer.Index understands and resolves it.
func (i *Indexer) Query(t interface{}, q string) ([]string, error) {
query, err := godata.ParseFilterString(q)
func (i *Indexer) Query(ctx context.Context, t interface{}, q string) ([]string, error) {
query, err := godata.ParseFilterString(ctx, q)
if err != nil {
return nil, err
}
Expand Down Expand Up @@ -353,7 +354,7 @@ func sanitizeInput(operands []string) (*indexerTuple, error) {
// is to transform godata operators and functions into supported operations on our index. At the time of this writing
// we only support `FindBy` and `FindByPartial` queries as these are the only implemented filters on indexer.Index(es).
func buildTreeFromOdataQuery(root *godata.ParseNode, tree *queryTree) error {
if root.Token.Type == godata.FilterTokenFunc { // i.e "startswith", "contains"
if root.Token.Type == godata.ExpressionTokenFunc { // i.e "startswith", "contains"
switch root.Token.Value {
case "startswith":
token := token{
Expand All @@ -372,7 +373,7 @@ func buildTreeFromOdataQuery(root *godata.ParseNode, tree *queryTree) error {
}
}

if root.Token.Type == godata.FilterTokenLogical {
if root.Token.Type == godata.ExpressionTokenLogical {
switch root.Token.Value {
case "or":
tree.insert(&token{operator: root.Token.Value})
Expand Down
12 changes: 7 additions & 5 deletions ocis-pkg/indexer/indexer_test.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package indexer

import (
"context"
"os"
"path"
"testing"
Expand Down Expand Up @@ -255,6 +256,7 @@ func TestQueryDiskImpl(t *testing.T) {
dataDir, err := WriteIndexTestData(Data, "ID", "")
assert.NoError(t, err)
indexer := createDiskIndexer(dataDir)
ctx := context.Background()

err = indexer.AddIndex(&Account{}, "OnPremisesSamAccountName", "ID", "accounts", "non_unique", nil, false)
assert.NoError(t, err)
Expand All @@ -274,23 +276,23 @@ func TestQueryDiskImpl(t *testing.T) {
_, err = indexer.Add(acc)
assert.NoError(t, err)

r, err := indexer.Query(&Account{}, "on_premises_sam_account_name eq 'MrDootDoot'") // this query will match both pets.
r, err := indexer.Query(ctx, &Account{}, "on_premises_sam_account_name eq 'MrDootDoot'") // this query will match both pets.
assert.NoError(t, err)
assert.Equal(t, []string{"ba5b6e54-e29d-4b2b-8cc4-0a0b958140d2"}, r)

r, err = indexer.Query(&Account{}, "mail eq '[email protected]'") // this query will match both pets.
r, err = indexer.Query(ctx, &Account{}, "mail eq '[email protected]'") // this query will match both pets.
assert.NoError(t, err)
assert.Equal(t, []string{"ba5b6e54-e29d-4b2b-8cc4-0a0b958140d2"}, r)

r, err = indexer.Query(&Account{}, "on_premises_sam_account_name eq 'MrDootDoot' or mail eq '[email protected]'") // this query will match both pets.
r, err = indexer.Query(ctx, &Account{}, "on_premises_sam_account_name eq 'MrDootDoot' or mail eq '[email protected]'") // this query will match both pets.
assert.NoError(t, err)
assert.Equal(t, []string{"ba5b6e54-e29d-4b2b-8cc4-0a0b958140d2"}, r)

r, err = indexer.Query(&Account{}, "startswith(on_premises_sam_account_name,'MrDoo')") // this query will match both pets.
r, err = indexer.Query(ctx, &Account{}, "startswith(on_premises_sam_account_name,'MrDoo')") // this query will match both pets.
assert.NoError(t, err)
assert.Equal(t, []string{"ba5b6e54-e29d-4b2b-8cc4-0a0b958140d2"}, r)

r, err = indexer.Query(&Account{}, "id eq 'ba5b6e54-e29d-4b2b-8cc4-0a0b958140d2' or on_premises_sam_account_name eq 'MrDootDoot'") // this query will match both pets.
r, err = indexer.Query(ctx, &Account{}, "id eq 'ba5b6e54-e29d-4b2b-8cc4-0a0b958140d2' or on_premises_sam_account_name eq 'MrDootDoot'") // this query will match both pets.
assert.NoError(t, err)
assert.Equal(t, []string{"ba5b6e54-e29d-4b2b-8cc4-0a0b958140d2"}, r)

Expand Down

0 comments on commit 32ffbe3

Please sign in to comment.