(t *testing.T)
| 94 | } |
| 95 | |
| 96 | func 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) |
nothing calls this directly
no test coverage detected
searching dependent graphs…