| <meta charset="utf-8"> |
| <script src="../../resources/js-test-pre.js"></script> |
| <body> |
| <div id="test"> |
| <p id="English">This paragraph is marked as being in English.</p> |
| <p id="Swedish">This paragraph is marked as being in Swedish.</p> |
| <p><span id="anything">The span element containing the text in this paragraph has an ID specified on it.</span></p> |
| </div> |
| </body> |
| <script> |
| description("Test XPath element tag and language matching to make sure only ASCII case is folded, and other non-ASCII case folding is not performed."); |
| |
| document.getElementById("English").setAttributeNS("http://www.w3.org/XML/1998/namespace", "lang", "en"); |
| document.getElementById("Swedish").setAttributeNS("http://www.w3.org/XML/1998/namespace", "lang", "sv"); |
| |
| shouldBe("document.evaluate('count(.//span[attribute::id])', document.body, null, XPathResult.NUMBER_TYPE, null).numberValue", "1"); |
| shouldBe("document.evaluate('count(.//ſpan[attribute::id])', document.body, null, XPathResult.NUMBER_TYPE, null).numberValue", "0"); |
| |
| shouldBe("document.evaluate('count(.//p[lang(\"en\")])', document.body, null, XPathResult.NUMBER_TYPE, null).numberValue", "1"); |
| shouldBe("document.evaluate('count(.//p[lang(\"sv\")])', document.body, null, XPathResult.NUMBER_TYPE, null).numberValue", "1"); |
| shouldBe("document.evaluate('count(.//p[lang(\"SV\")])', document.body, null, XPathResult.NUMBER_TYPE, null).numberValue", "1"); |
| shouldBe("document.evaluate('count(.//p[lang(\"ſv\")])', document.body, null, XPathResult.NUMBER_TYPE, null).numberValue", "0"); |
| |
| document.body.removeChild(document.getElementById("test")); |
| </script> |
| <script src="../../resources/js-test-post.js"></script> |