...
1 package mxj
2
3 import (
4 "encoding/xml"
5 "fmt"
6 "testing"
7 )
8
9 func TestStrictModeXml(t *testing.T) {
10 fmt.Println("----------------- TestStrictModeXml ...")
11 data := []byte(`<document> <name>Bill & Hallett</name> <salute>Duc & 123xx</salute> <goes_by/> <lang>E</lang> </document>`)
12
13 CustomDecoder = &xml.Decoder{Strict:false}
14 m, err := NewMapXml(data)
15 if err != nil {
16 t.Fatal(err)
17 }
18 fmt.Println("m:",m)
19 }
20
21 func TestStrictModeXmlSeq(t *testing.T) {
22 fmt.Println("----------------- TestStrictModeXmlSeq ...")
23 data := []byte(`<document> <name>Bill & Hallett</name> <salute>Duc & 123xx</salute> <goes_by/> <lang>E</lang> </document>`)
24
25 CustomDecoder = &xml.Decoder{Strict:false}
26 m, err := NewMapXmlSeq(data)
27 if err != nil {
28 t.Fatal(err)
29 }
30 fmt.Println("m:",m)
31 }
32
33 func TestStrictModeFail(t *testing.T) {
34 fmt.Println("----------------- TestStrictFail ...")
35 data := []byte(`<document> <name>Bill & Hallett</name> <salute>Duc & 123xx</salute> <goes_by/> <lang>E</lang> </document>`)
36
37 CustomDecoder = nil
38 _, err := NewMapXml(data)
39 if err == nil {
40 t.Fatal("error not caught: NewMapXml")
41 }
42 _, err = NewMapXmlSeq(data)
43 if err == nil {
44 t.Fatal("error not caught: NewMapXmlSeq")
45 }
46 fmt.Println("OK")
47 }
48
49
View as plain text