node-name-case-sensitivity.html revision 5f90462bbf4efb0ac7bb65a852d5559d0ab30f0b
1<html> 2<head> 3<link rel="stylesheet" href="/js/resources/js-test-style.css"> 4<script src="/js/resources/js-test-pre.js"></script> 5</head> 6<body> 7<p id="sometext"> 8<STRONG>strong</STRONG><strong>strong</strong><FOO>FOO</FOO><foo>foo</foo> 9</p> 10<div id="console"></div> 11<script type="text/javascript"> 12 13 function testHTML(query, expectedCount) 14 { 15 res = document.evaluate(query, document, function() { return "http://www.w3.org/1999/xhtml" }, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); 16 debug("HTML " + query); 17 shouldBe('res.snapshotLength', expectedCount); 18 } 19 20 function testXML(query, expectedCount) 21 { 22 res = doc.evaluate(query, doc, function() { return "http://www.w3.org/1999/xhtml" }, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); 23 debug("XML " + query); 24 shouldBe('res.snapshotLength', expectedCount); 25 } 26 27 testHTML('//*[@id="sometext"]//strong', '2'); 28 testHTML('//*[@id="sometext"]//Strong', '2'); 29 testHTML('//*[@id="Sometext"]//strong', '0'); 30 testHTML('//*[@id="sometext"]//foo', '2'); 31 testHTML('//*[@id="sometext"]//FOO', '2'); 32 33 var doc = (new DOMParser).parseFromString('<p id="sometext" xmlns="http://www.w3.org/1999/xhtml"><STRONG>strong</STRONG><strong>strong</strong><FOO xmlns="">FOO</FOO><foo xmlns="">foo</foo></p>', 'application/xhtml+xml'); 34 35 testXML('//*[@id="sometext"]//x:strong', '1'); 36 testXML('//*[@id="sometext"]//x:Strong', '0'); 37 testXML('//*[@id="Sometext"]//x:strong', '0'); 38 testXML('//*[@id="sometext"]//foo', '1'); 39 testXML('//*[@id="sometext"]//FOO', '1'); 40 41 var successfullyParsed = true; 42 43</script> 44<script src="/js/resources/js-test-post.js"></script> 45</body> 46</html> 47