MCPcopy Create free account
hub / github.com/antchfx/xpath / Test_Predicates_MultiParent

Function Test_Predicates_MultiParent

xpath_test.go:96–160  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

94}
95
96func Test_Predicates_MultiParent(t *testing.T) {
97 // https://github.com/antchfx/xpath/issues/75
98 /*
99 <measCollecFile xmlns="http://www.3gpp.org/ftp/specs/archive/32_series/32.435#measCollec">
100 <measData>
101 <measInfo>
102 <measType p="1">field1</measType>
103 <measType p="2">field2</measType>
104 <measValue>
105 <r p="1">31854</r>
106 <r p="2">159773</r>
107 </measValue>
108 </measInfo>
109 <measInfo measInfoId="metric_name2">
110 <measType p="1">field3</measType>
111 <measType p="2">field4</measType>
112 <measValue>
113 <r p="1">1234</r>
114 <r p="2">567</r>
115 </measValue>
116 </measInfo>
117 </measData>
118 </measCollecFile>
119 */
120 doc := createNode("", RootNode)
121 measCollecFile := doc.createChildNode("measCollecFile", ElementNode)
122 measData := measCollecFile.createChildNode("measData", ElementNode)
123 data := []struct {
124 measType map[string]string
125 measValue map[string]string
126 }{
127 {measType: map[string]string{"1": "field1", "2": "field2"}, measValue: map[string]string{"1": "31854", "2": "159773"}},
128 {measType: map[string]string{"1": "field3", "2": "field4"}, measValue: map[string]string{"1": "1234", "2": "567"}},
129 }
130 for j := 0; j < len(data); j++ {
131 d := data[j]
132 measInfo := measData.createChildNode("measInfo", ElementNode)
133 measType := measInfo.createChildNode("measType", ElementNode)
134
135 var keys []string
136 for k := range d.measType {
137 keys = append(keys, k)
138 }
139 sort.Strings(keys)
140
141 for _, k := range keys {
142 measType.addAttribute("p", k)
143 measType.createChildNode(d.measType[k], TextNode)
144 }
145
146 measValue := measInfo.createChildNode("measValue", ElementNode)
147 keys = make([]string, 0)
148 for k := range d.measValue {
149 keys = append(keys, k)
150 }
151 sort.Strings(keys)
152 for _, k := range keys {
153 r := measValue.createChildNode("r", ElementNode)

Callers

nothing calls this directly

Calls 4

createNodeFunction · 0.85
test_xpath_valuesFunction · 0.85
createChildNodeMethod · 0.80
addAttributeMethod · 0.80

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…