@@ -73,11 +73,24 @@ func TestFormatHtml(t *testing.T) {
7373}
7474
7575func TestXPathQuery(t *testing.T) {
76- fileReader := getFileReader(path.Join("..", "..", "test", "data", "xml", "formatted.xml"))
77- output := new(strings.Builder)
78- err := XPathQuery(fileReader, output, "//first_name", true)
79- assert.Nil(t, err)
80- assert.Equal(t, "John", strings.Trim(output.String(), "\n"))
76+ type test struct {
77+ input string
78+ query string
79+ result string
80+ }
81+
82+ tests := []test{
83+ {input: "formatted.xml", query: "//first_name", result: "John"},
84+ {input: "unformatted8.xml", query: "//title", result: "Some Title"},
85+ }
86+
87+ for _, testCase := range tests {
88+ fileReader := getFileReader(path.Join("..", "..", "test", "data", "xml", testCase.input))
89+ output := new(strings.Builder)
90+ err := XPathQuery(fileReader, output, testCase.query, true)
91+ assert.Nil(t, err)
92+ assert.Equal(t, testCase.result, strings.Trim(output.String(), "\n"))
93+ }
8194}
8295
8396func TestCSSQuery(t *testing.T) {
0 commit comments