numbers.html (1666B)
1 <!DOCTYPE html> 2 <link rel="help" href="https://www.w3.org/TR/1999/REC-xpath-19991116/#numbers"> 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_equals(evaluateNumber('count((./span)[1]) + count(./br)', context), 3); 13 }, '"+" 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_equals(evaluateNumber('count((./span)[1]) - count(./br)', context), -1); 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_equals(evaluateNumber('count((./span)[1]) * count(./br)', context), 2); 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_equals(evaluateNumber('count((./span)[1]) div count(./br)', context), 0.5); 31 }, '"div" 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_equals(evaluateNumber('count((./span)[1]) mod count(./br)', context), 1); 37 }, '"mod" operator depending on the context node'); 38 </script> 39 </body>