File tree Expand file tree Collapse file tree 2 files changed +21
-5
lines changed Expand file tree Collapse file tree 2 files changed +21
-5
lines changed Original file line number Diff line number Diff line change @@ -2724,3 +2724,24 @@ func TestExpr_wierd_cases(t *testing.T) {
27242724 require .Error (t , err )
27252725 require .Contains (t , err .Error (), "unknown name A" )
27262726}
2727+
2728+ func TestIssue785_get_nil (t * testing.T ) {
2729+ exprStrs := []string {
2730+ `get(nil, "a")` ,
2731+ `get({}, "a")` ,
2732+ `get(nil, "a")` ,
2733+ `get({}, "a")` ,
2734+ `({} | get("a") | get("b"))` ,
2735+ }
2736+
2737+ for _ , exprStr := range exprStrs {
2738+ t .Run ("get returns nil" , func (t * testing.T ) {
2739+ env := map [string ]interface {}{}
2740+
2741+ result , err := expr .Eval (exprStr , env )
2742+ require .NoError (t , err )
2743+
2744+ require .Equal (t , nil , result )
2745+ })
2746+ }
2747+ }
Original file line number Diff line number Diff line change @@ -7221,11 +7221,6 @@ get(true ? i64 : greet, i32)
72217221get(true ? score : true, half)?.half
72227222get(true ? true : i, f64)
72237223get({"foo": foo, "bar": false}, type(i))
7224- get(nil, "a")
7225- get({}, "a")
7226- get(nil, "a") == nil
7227- get({}, "a") == nil
7228- ({} | get("a") | get("b")) == nil
72297224greet
72307225greet != greet
72317226greet != greet != ok
You can’t perform that action at this time.
0 commit comments