package mxj import ( "fmt" "testing" ) func TestStakeCase(t *testing.T) { PrependAttrWithHyphen(true) fmt.Println("\n----------- TestSnakeCase") CoerceKeysToSnakeCase() defer CoerceKeysToSnakeCase() data1 := `something` data2 := `something` m, err := NewMapXml([]byte(data1)) if err != nil { t.Fatal(err) } x, err := m.Xml() if err != nil { t.Fatal(err) } if string(x) != data2 { t.Fatal(string(x), "!=", data2) } // Use-case from: https://github.com/clbanning/mxj/pull/33#issuecomment-273724506 data1 = ` srx100 srx100b srx100b junos JUNOS Software Release [11.2R4.3] ` data2 = ` srx100 srx100b srx100b junos JUNOS Software Release [11.2R4.3] ` ms, err := NewMapXmlSeq([]byte(data1)) if err != nil { t.Fatal(err) } x, err = ms.XmlIndent("", "") if err != nil { t.Fatal(err) } if string(x) != data2 { t.Fatal(string(x), "!=", data2) } }