示例#1
0
func TestParser1(t *testing.T) {
	testData := `
	{
		"item1" : [ 1, 2, 3 ],
		"item2": {
			"inner1": "text",
			"inner2": 0.5e+1,
			"inner3": true,
			"inner4": false,
			"inner5": null
		}
	}
	`
	target := parser.NewParser(strings.NewReader(testData))
	actual, err := target.Parse()
	t.Logf("%#v", actual)
	t.Logf("%#v", actual.ObjectValue["item1"].ArrayValue[0].NumberValue)
	t.Logf("%#v", actual.ObjectValue["item1"].ArrayValue[1].NumberValue)
	t.Logf("%#v", actual.ObjectValue["item1"].ArrayValue[2].NumberValue)
	t.Logf("%#v", actual.ObjectValue["item2"].ObjectValue["inner1"].StringValue)
	t.Logf("%#v", actual.ObjectValue["item2"].ObjectValue["inner2"].NumberValue)
	t.Logf("%#v", actual.ObjectValue["item2"].ObjectValue["inner3"].BooleanValue)
	t.Logf("%#v", actual.ObjectValue["item2"].ObjectValue["inner4"].BooleanValue)
	t.Logf("%#v", actual.ObjectValue["item2"].ObjectValue["inner5"].NullValue)
	if err != nil {
		t.Error(err)
	}
}
示例#2
0
func TestParser2(t *testing.T) {
	testData := `
	{
		"item1" : [ 1, 2, 3 ],
		"item2": {
			"inner1": "text",
			"inner2": 0.5e+1,
			"inner3": true,
			"inner4": false,
			"inner5": null
		}
	}
	`
	target := parser.NewParser(strings.NewReader(testData))
	_, err := target.Parse()
	if err != nil {
		t.Error(err)
	}
}