Skip to content

Commit 9bd3f01

Browse files
committed
Fix float64 and lint
1 parent af7058c commit 9bd3f01

File tree

3 files changed

+39
-26
lines changed

3 files changed

+39
-26
lines changed

node.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ func parseValue(x interface{}, top *Node, level int) {
127127
n := &Node{Data: v, Type: TextNode, level: level}
128128
addNode(n)
129129
case float64:
130-
s := strconv.FormatFloat(v, 'f', -1, 32)
130+
s := strconv.FormatFloat(v, 'f', -1, 64)
131131
n := &Node{Data: s, Type: TextNode, level: level}
132132
addNode(n)
133133
case bool:

node_test.go

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,22 +22,22 @@ func TestParseJsonNumberArray(t *testing.T) {
2222
// ...
2323
// <element>6</element>
2424
if e, g := 6, len(doc.ChildNodes()); e != g {
25-
t.Fatalf("excepted %d but got %d", e, g)
25+
t.Fatalf("excepted %v but got %v", e, g)
2626
}
2727
var v []string
2828
for _, n := range doc.ChildNodes() {
2929
v = append(v, n.InnerText())
3030
}
3131
if got, expected := strings.Join(v, ","), "1,2,3,4,5,6"; got != expected {
32-
t.Fatalf("got %s but expected %s", got, expected)
32+
t.Fatalf("got %v but expected %v", got, expected)
3333
}
3434
}
3535

3636
func TestParseJsonObject(t *testing.T) {
3737
s := `{
3838
"name":"John",
39-
"age":31,
40-
"city":"New York"
39+
"age":31,
40+
"city":"New York"
4141
}`
4242
doc, err := parseString(s)
4343
if err != nil {
@@ -60,7 +60,7 @@ func TestParseJsonObject(t *testing.T) {
6060
}
6161
for _, v := range expected {
6262
if e, g := v.value, m[v.name]; e != g {
63-
t.Fatalf("expected %s=%s,but %s=%s", v.name, e, v.name, g)
63+
t.Fatalf("expected %v=%v,but %v=%v", v.name, e, v.name, g)
6464
}
6565
}
6666
}
@@ -70,7 +70,6 @@ func TestParseJsonObjectArray(t *testing.T) {
7070
{ "name":"Ford", "models":[ "Fiesta", "Focus", "Mustang" ] },
7171
{ "name":"BMW", "models":[ "320", "X3", "X5" ] },
7272
{ "name":"Fiat", "models":[ "500", "Panda" ] }
73-
7473
]`
7574
doc, err := parseString(s)
7675
if err != nil {
@@ -96,7 +95,7 @@ func TestParseJsonObjectArray(t *testing.T) {
9695
....
9796
*/
9897
if e, g := 3, len(doc.ChildNodes()); e != g {
99-
t.Fatalf("expected %d, but %d", e, g)
98+
t.Fatalf("expected %v, but %v", e, g)
10099
}
101100
m := make(map[string][]string)
102101
for _, n := range doc.ChildNodes() {
@@ -128,7 +127,7 @@ func TestParseJsonObjectArray(t *testing.T) {
128127
}
129128
for _, v := range expected {
130129
if e, g := v.value, strings.Join(m[v.name], ","); e != g {
131-
t.Fatalf("expected %s=%s,but %s=%s", v.name, e, v.name, g)
130+
t.Fatalf("expected %v=%v,but %v=%v", v.name, e, v.name, g)
132131
}
133132
}
134133
}
@@ -155,10 +154,24 @@ func TestParseJson(t *testing.T) {
155154
t.Fatal("next sibling shoud be nil")
156155
}
157156
if e, g := "John", n.InnerText(); e != g {
158-
t.Fatalf("expected %s but %s", e, g)
157+
t.Fatalf("expected %v but %v", e, g)
159158
}
160159
cars := doc.SelectElement("cars")
161160
if e, g := 3, len(cars.ChildNodes()); e != g {
162-
t.Fatalf("expected %d but %d", e, g)
161+
t.Fatalf("expected %v but %v", e, g)
162+
}
163+
}
164+
165+
func TestLargeFloat(t *testing.T) {
166+
s := `{
167+
"large_number": 365823929453
168+
}`
169+
doc, err := parseString(s)
170+
if err != nil {
171+
t.Fatal(err)
172+
}
173+
n := doc.SelectElement("large_number")
174+
if n.InnerText() != "365823929453" {
175+
t.Fatalf("expected %v but %v", "365823929453", n.InnerText())
163176
}
164177
}

query_test.go

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -43,46 +43,46 @@ func TestNavigator(t *testing.T) {
4343
}
4444
// Move to first child(age).
4545
if e, g := true, nav.MoveToChild(); e != g {
46-
t.Fatalf("expected %s but %s", e, g)
46+
t.Fatalf("expected %v but %v", e, g)
4747
}
4848
if e, g := "age", nav.Current().Data; e != g {
49-
t.Fatalf("expected %s but %s", e, g)
49+
t.Fatalf("expected %v but %v", e, g)
5050
}
5151
if e, g := "30", nav.Value(); e != g {
52-
t.Fatalf("expected %s but %s", e, g)
52+
t.Fatalf("expected %v but %v", e, g)
5353
}
5454
// Move to next sibling node(cars).
5555
if e, g := true, nav.MoveToNext(); e != g {
56-
t.Fatalf("expected %b but %b", e, g)
56+
t.Fatalf("expected %v but %v", e, g)
5757
}
5858
if e, g := "cars", nav.Current().Data; e != g {
59-
t.Fatalf("expected %s but %s", e, g)
59+
t.Fatalf("expected %v but %v", e, g)
6060
}
6161
m := make(map[string][]string)
6262
// Move to cars child node.
6363
cur := nav.Copy()
6464
for ok := nav.MoveToChild(); ok; ok = nav.MoveToNext() {
6565
// Move to <element> node.
6666
// <element><models>...</models><name>Ford</name></element>
67-
cur_1 := nav.Copy()
67+
cur1 := nav.Copy()
6868
var name string
6969
var models []string
7070
// name || models
7171
for ok := nav.MoveToChild(); ok; ok = nav.MoveToNext() {
72-
cur_2 := nav.Copy()
72+
cur2 := nav.Copy()
7373
n := nav.Current()
7474
if n.Data == "name" {
7575
name = n.InnerText()
7676
} else {
7777
for ok := nav.MoveToChild(); ok; ok = nav.MoveToNext() {
78-
cur_3 := nav.Copy()
78+
cur3 := nav.Copy()
7979
models = append(models, nav.Value())
80-
nav.MoveTo(cur_3)
80+
nav.MoveTo(cur3)
8181
}
8282
}
83-
nav.MoveTo(cur_2)
83+
nav.MoveTo(cur2)
8484
}
85-
nav.MoveTo(cur_1)
85+
nav.MoveTo(cur1)
8686
m[name] = models
8787
}
8888
expected := []struct {
@@ -94,23 +94,23 @@ func TestNavigator(t *testing.T) {
9494
}
9595
for _, v := range expected {
9696
if e, g := v.value, strings.Join(m[v.name], ","); e != g {
97-
t.Fatalf("expected %s=%s,but %s=%s", v.name, e, v.name, g)
97+
t.Fatalf("expected %v=%v,but %v=%v", v.name, e, v.name, g)
9898
}
9999
}
100100
nav.MoveTo(cur)
101101
// move to name.
102102
if e, g := true, nav.MoveToNext(); e != g {
103-
t.Fatalf("expected %b but %b", e, g)
103+
t.Fatalf("expected %v but %v", e, g)
104104
}
105105
// move to cars
106106
nav.MoveToPrevious()
107107
if e, g := "cars", nav.Current().Data; e != g {
108-
t.Fatalf("expected %s but %s", e, g)
108+
t.Fatalf("expected %v but %v", e, g)
109109
}
110110
// move to age.
111111
nav.MoveToFirst()
112112
if e, g := "age", nav.Current().Data; e != g {
113-
t.Fatalf("expected %s but %s", e, g)
113+
t.Fatalf("expected %v but %v", e, g)
114114
}
115115
nav.MoveToParent()
116116
if g := nav.Current().Type; g != DocumentNode {

0 commit comments

Comments
 (0)