more tests for xpath

This commit is contained in:
BroodjeAap 2022-08-11 18:51:56 +00:00
parent ab7a7fd534
commit b9038d5a7e

View file

@ -21,10 +21,10 @@ const HTML_STRING = `<html>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr><td>product1</td><td>10</td><td>100</td></tr> <tr><td class="product">product1</td><td class="stock">10</td><td class="price">100</td></tr>
<tr><td>product2</td><td>20</td><td>200</td></tr> <tr><td class="product">product2</td><td class="stock">20</td><td class="price">200</td></tr>
<tr><td>product3</td><td>30</td><td>300</td></tr> <tr><td class="product">product3</td><td class="stock">30</td><td class="price">300</td></tr>
<tr><td>product4</td><td>40</td><td>400</td></tr> <tr><td class="product">product4</td><td class="stock">40</td><td class="price">400</td></tr>
</tbody> </tbody>
</table> </table>
</body> </body>
@ -36,7 +36,10 @@ func TestFilterXPath(t *testing.T) {
Want []string Want []string
}{ }{
{"//title", []string{"<title>title</title>"}}, {"//title", []string{"<title>title</title>"}},
{"//table[@id='product-table']//tr//td[last()]", []string{"<td>100</td>", "<td>200</td>", "<td>300</td>", "<td>400</td>"}}, {"//table[@id='product-table']//tr//td[last()]", []string{`<td class="price">100</td>`, `<td class="price">200</td>`, `<td class="price">300</td>`, `<td class="price">400</td>`}},
{"//td[@class='price']", []string{`<td class="price">100</td>`, `<td class="price">200</td>`, `<td class="price">300</td>`, `<td class="price">400</td>`}},
{"//table[@id='product-table']//tr//td[2]", []string{`<td class="stock">10</td>`, `<td class="stock">20</td>`, `<td class="stock">30</td>`, `<td class="stock">40</td>`}},
{"//td[@class='stock']", []string{`<td class="stock">10</td>`, `<td class="stock">20</td>`, `<td class="stock">30</td>`, `<td class="stock">40</td>`}},
} }
for _, test := range tests { for _, test := range tests {