feat(filter): add in keyword

This commit is contained in:
kolaente 2023-11-22 09:24:13 +01:00
parent c6b682507a
commit ef1cc9720c
Signed by: konrad
GPG Key ID: F40E70337AB24C9B
2 changed files with 15 additions and 1 deletions

View File

@ -150,6 +150,8 @@ func getTaskFiltersByCollections(c *TaskCollection) (filters []*taskFilter, err
return
}
c.Filter = strings.ReplaceAll(c.Filter, " in ", " ?= ")
parsedFilter, err := fexpr.Parse(c.Filter)
if err != nil {
return nil, &ErrInvalidFilterExpression{

View File

@ -1032,10 +1032,22 @@ func TestTaskCollection_ReadAll(t *testing.T) {
},
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",
fields: fields{
Filter: "id ?= '1,2,34'",
Filter: "id ?= '1,2,34'", // user does not have permission to access task 34
},
args: defaultArgs,
want: []*Task{