1package jsonparser
2
3func FuzzParseString(data []byte) int {
4 r, err := ParseString(data)
5 if err != nil || r == "" {
6 return 0
7 }
8 return 1
9}
10
11func FuzzEachKey(data []byte) int {
12 paths := [][]string{
13 {"name"},
14 {"order"},
15 {"nested", "a"},
16 {"nested", "b"},
17 {"nested2", "a"},
18 {"nested", "nested3", "b"},
19 {"arr", "[1]", "b"},
20 {"arrInt", "[3]"},
21 {"arrInt", "[5]"},
22 {"nested"},
23 {"arr", "["},
24 {"a\n", "b\n"},
25 }
26 EachKey(data, func(idx int, value []byte, vt ValueType, err error) {}, paths...)
27 return 1
28}
29
30func FuzzDelete(data []byte) int {
31 Delete(data, "test")
32 return 1
33}
34
35func FuzzSet(data []byte) int {
36 _, err := Set(data, []byte(`"new value"`), "test")
37 if err != nil {
38 return 0
39 }
40 return 1
41}
42
43func FuzzObjectEach(data []byte) int {
44 _ = ObjectEach(data, func(key, value []byte, valueType ValueType, off int) error {
45 return nil
46 })
47 return 1
48}
49
50func FuzzParseFloat(data []byte) int {
51 _, err := ParseFloat(data)
52 if err != nil {
53 return 0
54 }
55 return 1
56}
57
58func FuzzParseInt(data []byte) int {
59 _, err := ParseInt(data)
60 if err != nil {
61 return 0
62 }
63 return 1
64}
65
66func FuzzParseBool(data []byte) int {
67 _, err := ParseBoolean(data)
68 if err != nil {
69 return 0
70 }
71 return 1
72}
73
74func FuzzTokenStart(data []byte) int {
75 _ = tokenStart(data)
76 return 1
77}
78
79func FuzzGetString(data []byte) int {
80 _, err := GetString(data, "test")
81 if err != nil {
82 return 0
83 }
84 return 1
85}
86
87func FuzzGetFloat(data []byte) int {
88 _, err := GetFloat(data, "test")
89 if err != nil {
90 return 0
91 }
92 return 1
93}
94
95func FuzzGetInt(data []byte) int {
96 _, err := GetInt(data, "test")
97 if err != nil {
98 return 0
99 }
100 return 1
101}
102
103func FuzzGetBoolean(data []byte) int {
104 _, err := GetBoolean(data, "test")
105 if err != nil {
106 return 0
107 }
108 return 1
109}
110
111func FuzzGetUnsafeString(data []byte) int {
112 _, err := GetUnsafeString(data, "test")
113 if err != nil {
114 return 0
115 }
116 return 1
117}