booleans.html (2185B)
1 <!DOCTYPE html> 2 <link rel="help" href="https://www.w3.org/TR/1999/REC-xpath-19991116/#booleans"> 3 <body> 4 <script src="/resources/testharness.js"></script> 5 <script src="/resources/testharnessreport.js"></script> 6 <script src="helpers.js"></script> 7 <div id="context"></div> 8 <script> 9 test(() => { 10 const context = document.querySelector('#context'); 11 context.innerHTML = '<span></span><span></span><span></span><br><br>'; 12 assert_true(evaluateBoolean('(./span)[4] or ./br[2]', context)); 13 }, '"or" operator depending on the context node'); 14 15 test(() => { 16 const context = document.querySelector('#context'); 17 context.innerHTML = '<span></span><span></span><span></span><br><br>'; 18 assert_true(evaluateBoolean('count((./span)[3]) = count(./br[2])', context)); 19 }, '"=" operator depending on the context node'); 20 21 test(() => { 22 const context = document.querySelector('#context'); 23 context.innerHTML = '<span></span><span></span><span></span><br><br>'; 24 assert_false(evaluateBoolean('count((./span)[3]) != count(./br[2])', context)); 25 }, '"!=" operator depending on the context node'); 26 27 test(() => { 28 const context = document.querySelector('#context'); 29 context.innerHTML = '<span></span><span></span><span></span><br><br>'; 30 assert_true(evaluateBoolean('count((./span)[3]) < count(./br)', context)); 31 }, '"<" operator depending on the context node'); 32 33 test(() => { 34 const context = document.querySelector('#context'); 35 context.innerHTML = '<span></span><span></span><span></span><br><br>'; 36 assert_false(evaluateBoolean('count((./span)[3]) > count(./br[2])', context)); 37 }, '">" operator depending on the context node'); 38 39 test(() => { 40 const context = document.querySelector('#context'); 41 context.innerHTML = '<span></span><span></span><span></span><br><br>'; 42 assert_false(evaluateBoolean('count((./span)[3]) >= count(./br)', context)); 43 }, '">=" operator depending on the context node'); 44 45 test(() => { 46 const context = document.querySelector('#context'); 47 context.innerHTML = '<span></span><span></span><span></span><br><br>'; 48 assert_true(evaluateBoolean('count((./span)[3]) <= count(./br[2])', context)); 49 }, '"<=" operator depending on the context node'); 50 51 </script> 52 </body>