1package mxj 2 3import ( 4 "fmt" 5 "testing" 6) 7 8func TestMxjHeader(t *testing.T) { 9 fmt.Println("\n---------------- mxj_test.go ...") 10} 11 12func TestMap(t *testing.T) { 13 m := New() 14 15 m["key"] = interface{}("value") 16 v := map[string]interface{}{"bool": true, "float": 3.14159, "string": "Now is the time"} 17 vv := []interface{}{3.1415962535, false, "for all good men"} 18 v["listkey"] = interface{}(vv) 19 m["newkey"] = interface{}(v) 20 21 fmt.Println("TestMap, m:") 22 fmt.Printf("%#v\n", m) 23 fmt.Println("TestMap, StringIndent -") 24 fmt.Println(m.StringIndent()) 25 fmt.Println("TestMap, StringIndent NoTypeInfo -") 26 fmt.Println(m.StringIndentNoTypeInfo()) 27 28 o := interface{}(m.Old()) 29 switch o.(type) { 30 case map[string]interface{}: 31 // do nothing 32 default: 33 t.Fatal("invalid type for m.Old()") 34 } 35 36 m, _ = NewMapXml([]byte(`<doc><tag><sub_tag1>Hello</sub_tag1><sub_tag2>World</sub_tag2></tag></doc>`)) 37 fmt.Println("TestMap, m_fromXML:") 38 fmt.Printf("%#v\n", m) 39 fmt.Println("TestMap, StringIndent -") 40 fmt.Println( m.StringIndent()) 41 fmt.Println("TestMap, StringIndent NoTypeInfo -") 42 fmt.Println( m.StringIndentNoTypeInfo()) 43 44 mm, _ := m.Copy() 45 fmt.Println("TestMap, m.Copy() -\n", mm) 46} 47