Skip to content

Commit 8e460b1

Browse files
committed
test: nil value panic
1 parent a043d24 commit 8e460b1

File tree

2 files changed

+36
-8
lines changed

2 files changed

+36
-8
lines changed

test/main.go

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -126,14 +126,15 @@ func main() {
126126
// ExampleOmit()
127127
//}
128128

129-
fmt.Println(filter.Omit("1", User{}))
130-
fmt.Println(filter.Omit("1", User{}))
131-
fmt.Println(filter.Omit("1", User{}))
132-
fmt.Println(filter.Omit("1", User{}))
133-
fmt.Println(filter.Omit("1", User{}))
134-
fmt.Println(filter.Omit("1", User{}))
135-
fmt.Println(filter.Omit("1", User{}))
136-
fmt.Println(filter.Omit("1", User{}))
129+
//fmt.Println(filter.Omit("1", User{}))
130+
//fmt.Println(filter.Omit("1", User{}))
131+
//fmt.Println(filter.Omit("1", User{}))
132+
//fmt.Println(filter.Omit("1", User{}))
133+
//fmt.Println(filter.Omit("1", User{}))
134+
//fmt.Println(filter.Omit("1", User{}))
135+
//fmt.Println(filter.Omit("1", User{}))
136+
//fmt.Println(filter.Omit("1", User{}))
137+
TestNilValue()
137138

138139
}
139140

test/nil_value.go

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package main
2+
3+
import (
4+
"fmt"
5+
"github.com/liu-cn/json-filter/filter"
6+
)
7+
8+
func TestNilValue() {
9+
var a *T
10+
var c *T
11+
var el = map[string]interface{}{
12+
"a": a, // a: nil ptr
13+
"b": 1,
14+
"c": map[string]interface{}{
15+
"bb": nil,
16+
"dd": c, // dd: nil ptr
17+
},
18+
}
19+
20+
fmt.Println(filter.Select("test", el))
21+
//{"a":null,"b":1,"c":{"bb":null,"dd":null}}
22+
23+
}
24+
25+
type T struct {
26+
A string `json:"a,select(test)"`
27+
}

0 commit comments

Comments
 (0)