1
2
3 package mxj
4
5 import (
6 "bytes"
7 "fmt"
8 "testing"
9 )
10
11 func TestBulkRawHeader(t *testing.T) {
12 fmt.Println("\n---------------- bulkraw_test.go ...")
13 }
14
15
16
17 var jsonWriterRaw = new(bytes.Buffer)
18 var xmlWriterRaw = new(bytes.Buffer)
19
20 var jsonErrLogRaw = new(bytes.Buffer)
21 var xmlErrLogRaw = new(bytes.Buffer)
22
23 func TestXmlReaderRaw(t *testing.T) {
24
25 xmlReader := bytes.NewReader(xmldata)
26
27
28 err := HandleXmlReaderRaw(xmlReader, bxmaphandlerRaw, bxerrhandlerRaw)
29 if err != nil {
30 t.Fatal("err:", err.Error())
31 }
32
33
34 j := make([]byte, jsonWriterRaw.Len())
35 _, _ = jsonWriterRaw.Read(j)
36
37
38 e := make([]byte, xmlErrLogRaw.Len())
39 _, _ = xmlErrLogRaw.Read(e)
40
41
42 fmt.Println("XmlReaderRaw, xmldata:\n", string(xmldata))
43
44 fmt.Println("XmlReaderRaw, result :\n", string(j))
45
46 fmt.Println("XmlReaderRaw, errors :\n", string(e))
47 }
48
49 func bxmaphandlerRaw(m Map, raw []byte) bool {
50 j, err := m.JsonIndent("", " ", true)
51 if err != nil {
52 return false
53 }
54
55 _, _ = jsonWriterRaw.Write(j)
56
57 _, _ = jsonWriterRaw.Write([]byte("\n"))
58 return true
59 }
60
61 func bxerrhandlerRaw(err error, raw []byte) bool {
62
63 _, _ = xmlErrLogRaw.Write([]byte(err.Error()))
64 _, _ = xmlErrLogRaw.Write([]byte("\n"))
65 _, _ = xmlErrLogRaw.Write(raw)
66 _, _ = xmlErrLogRaw.Write([]byte("\n"))
67 return true
68 }
69
70 func TestJsonReaderRaw(t *testing.T) {
71 jsonReader := bytes.NewReader(jsondata)
72
73
74 err := HandleJsonReaderRaw(jsonReader, bjmaphandlerRaw, bjerrhandlerRaw)
75 if err != nil {
76 t.Fatal("err:", err.Error())
77 }
78
79
80 x := make([]byte, xmlWriterRaw.Len())
81 _, _ = xmlWriterRaw.Read(x)
82
83
84 e := make([]byte, jsonErrLogRaw.Len())
85 _, _ = jsonErrLogRaw.Read(e)
86
87
88 fmt.Println("JsonReaderRaw, jsondata:\n", string(jsondata))
89
90 fmt.Println("JsonReaderRaw, result :\n", string(x))
91
92 fmt.Println("JsonReaderRaw, errors :\n", string(e))
93 }
94
95 func bjmaphandlerRaw(m Map, raw []byte) bool {
96 x, err := m.XmlIndent(" ", " ")
97 if err != nil {
98 return false
99 }
100 _, _ = xmlWriterRaw.Write(x)
101
102 _, _ = xmlWriterRaw.Write([]byte("\n"))
103 return true
104 }
105
106 func bjerrhandlerRaw(err error, raw []byte) bool {
107
108 _, _ = jsonErrLogRaw.Write([]byte(err.Error()))
109 _, _ = jsonErrLogRaw.Write([]byte("\n"))
110 _, _ = jsonErrLogRaw.Write(raw)
111 _, _ = jsonErrLogRaw.Write([]byte("\n"))
112 return true
113 }
114
View as plain text