func testArray(t *testing.T, s string) { parser := sjson.NewJsonParser() if err := parser.Init([]byte(s)); err != nil { t.Fatal(err) } jout := debug.Walk(parser) t.Logf("%v", jout) }
func TestDebug(t *testing.T) { p := NewReflectParser() p.Init(reflect.ValueOf(debug.Input)) m := debug.Walk(p) if !m.Equal(debug.Output) { t.Fatalf("expected %s but got %s", debug.Output, m) } }
func TestMultiLineArray(t *testing.T) { s := `{ "A":[1] }` parser := sjson.NewJsonParser() if err := parser.Init([]byte(s)); err != nil { t.Fatal(err) } jout := debug.Walk(parser) t.Logf("%v", jout) }
func testXML(t *testing.T, s string) { x := NewXMLParser() if err := x.Init([]byte(s)); err != nil { panic(err) } m := debug.Walk(debug.NewLogger(x, debug.NewLineLogger())) data, err := json.Marshal(m) if err != nil { t.Fatal(err) } t.Logf(string(data)) }
func TestExtensionsBigContainer(t *testing.T) { p := NewProtoNameParser("prototests", "BigContainer", prototests.ABigContainer.Description()) data, err := proto.Marshal(prototests.ABigContainer) if err != nil { panic(err) } if err := p.Init(data); err != nil { t.Fatal(err) } nodes := debug.Walk(p) if !nodes.Equal(prototests.ABigContainerOutput) { t.Fatalf("expected %v, but got %v", prototests.ABigContainerOutput, nodes) } }
func TestDebug(t *testing.T) { p := sjson.NewJsonParser() data, err := json.Marshal(debug.Input) if err != nil { t.Fatal(err) } if err := p.Init(data); err != nil { t.Fatal(err) } m := debug.Walk(p) if !m.Equal(debug.Output) { t.Fatalf("expected %s but got %s", debug.Output, m) } }
func TestDebug(t *testing.T) { p := NewProtoNameParser("debug", "Debug", debug.DebugDescription()) data, err := proto.Marshal(debug.Input) if err != nil { panic(err) } if err := p.Init(data); err != nil { t.Fatal(err) } parser := debug.NewLogger(p, debug.NewLineLogger()) m := debug.Walk(parser) if !m.Equal(debug.Output) { t.Fatalf("expected %s but got %s", debug.Output, m) } }
func testValue(t *testing.T, input, output string) { parser := sjson.NewJsonParser() if err := parser.Init([]byte(input)); err != nil { t.Fatalf("init error: %v", err) } jout := debug.Walk(parser) if len(jout) != 1 { t.Fatalf("expected one node") } if len(jout[0].Children) != 0 { t.Fatalf("did not expected any children") } if jout[0].Label != output { t.Fatalf("expected %s got %s", output, jout[0].Label) } }
func TestEscapedChar(t *testing.T) { j := map[string][]interface{}{ `a\"`: {1}, } data, err := json.Marshal(j) if err != nil { t.Fatal(err) } t.Logf("%s", string(data)) parser := sjson.NewJsonParser() if err := parser.Init(data); err != nil { t.Fatal(err) } m := debug.Walk(parser) name := m[0].Label if name != `a\"` { t.Fatalf("wrong escaped name %s", name) } }