Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
canifa_note
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vũ Hoàng Anh
canifa_note
Commits
58a867e4
Commit
58a867e4
authored
Feb 02, 2025
by
johnnyjoy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: linter warning
parent
2d731c5c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
18 deletions
+21
-18
filter.go
plugin/filter/filter.go
+20
-17
memo_filter_test.go
store/db/sqlite/memo_filter_test.go
+1
-1
No files found.
plugin/filter/filter.go
View file @
58a867e4
...
...
@@ -14,8 +14,8 @@ var MemoFilterCELAttributes = []cel.EnvOption{
// Parse parses the filter string and returns the parsed expression.
// The filter string should be a CEL expression.
func
Parse
(
filter
string
)
(
expr
*
exprv1
.
ParsedExpr
,
err
error
)
{
e
,
err
:=
cel
.
NewEnv
(
MemoFilterCELAttribute
s
...
)
func
Parse
(
filter
string
,
opts
...
cel
.
EnvOption
)
(
expr
*
exprv1
.
ParsedExpr
,
err
error
)
{
e
,
err
:=
cel
.
NewEnv
(
opt
s
...
)
if
err
!=
nil
{
return
nil
,
errors
.
Wrap
(
err
,
"failed to create CEL environment"
)
}
...
...
@@ -28,20 +28,23 @@ func Parse(filter string) (expr *exprv1.ParsedExpr, err error) {
// GetConstValue returns the constant value of the expression.
func
GetConstValue
(
expr
*
exprv1
.
Expr
)
(
any
,
error
)
{
switch
v
:=
expr
.
ExprKind
.
(
type
)
{
case
*
exprv1
.
Expr_ConstExpr
:
switch
v
.
ConstExpr
.
ConstantKind
.
(
type
)
{
case
*
exprv1
.
Constant_StringValue
:
return
v
.
ConstExpr
.
GetStringValue
(),
nil
case
*
exprv1
.
Constant_Int64Value
:
return
v
.
ConstExpr
.
GetInt64Value
(),
nil
case
*
exprv1
.
Constant_Uint64Value
:
return
v
.
ConstExpr
.
GetUint64Value
(),
nil
case
*
exprv1
.
Constant_DoubleValue
:
return
v
.
ConstExpr
.
GetDoubleValue
(),
nil
case
*
exprv1
.
Constant_BoolValue
:
return
v
.
ConstExpr
.
GetBoolValue
(),
nil
}
v
,
ok
:=
expr
.
ExprKind
.
(
*
exprv1
.
Expr_ConstExpr
)
if
!
ok
{
return
nil
,
errors
.
New
(
"invalid constant expression"
)
}
switch
v
.
ConstExpr
.
ConstantKind
.
(
type
)
{
case
*
exprv1
.
Constant_StringValue
:
return
v
.
ConstExpr
.
GetStringValue
(),
nil
case
*
exprv1
.
Constant_Int64Value
:
return
v
.
ConstExpr
.
GetInt64Value
(),
nil
case
*
exprv1
.
Constant_Uint64Value
:
return
v
.
ConstExpr
.
GetUint64Value
(),
nil
case
*
exprv1
.
Constant_DoubleValue
:
return
v
.
ConstExpr
.
GetDoubleValue
(),
nil
case
*
exprv1
.
Constant_BoolValue
:
return
v
.
ConstExpr
.
GetBoolValue
(),
nil
default
:
return
nil
,
errors
.
New
(
"unexpected constant type"
)
}
return
nil
,
errors
.
New
(
"invalid constant expression"
)
}
store/db/sqlite/memo_filter_test.go
View file @
58a867e4
...
...
@@ -31,7 +31,7 @@ func TestRestoreExprToSQL(t *testing.T) {
}
for
_
,
tt
:=
range
tests
{
parsedExpr
,
err
:=
filter
.
Parse
(
tt
.
filter
)
parsedExpr
,
err
:=
filter
.
Parse
(
tt
.
filter
,
filter
.
MemoFilterCELAttributes
...
)
require
.
NoError
(
t
,
err
)
result
,
err
:=
RestoreExprToSQL
(
parsedExpr
.
GetExpr
())
require
.
NoError
(
t
,
err
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment