feat(filter): add in keyword
This commit is contained in:
parent
c6b682507a
commit
ef1cc9720c
@ -150,6 +150,8 @@ func getTaskFiltersByCollections(c *TaskCollection) (filters []*taskFilter, err
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
c.Filter = strings.ReplaceAll(c.Filter, " in ", " ?= ")
|
||||||
|
|
||||||
parsedFilter, err := fexpr.Parse(c.Filter)
|
parsedFilter, err := fexpr.Parse(c.Filter)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, &ErrInvalidFilterExpression{
|
return nil, &ErrInvalidFilterExpression{
|
||||||
|
@ -1032,10 +1032,22 @@ func TestTaskCollection_ReadAll(t *testing.T) {
|
|||||||
},
|
},
|
||||||
wantErr: false,
|
wantErr: false,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "filter in keyword",
|
||||||
|
fields: fields{
|
||||||
|
Filter: "id in '1,2,34'", // user does not have permission to access task 34
|
||||||
|
},
|
||||||
|
args: defaultArgs,
|
||||||
|
want: []*Task{
|
||||||
|
task1,
|
||||||
|
task2,
|
||||||
|
},
|
||||||
|
wantErr: false,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "filter in",
|
name: "filter in",
|
||||||
fields: fields{
|
fields: fields{
|
||||||
Filter: "id ?= '1,2,34'",
|
Filter: "id ?= '1,2,34'", // user does not have permission to access task 34
|
||||||
},
|
},
|
||||||
args: defaultArgs,
|
args: defaultArgs,
|
||||||
want: []*Task{
|
want: []*Task{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user