Home | History | Annotate | Download | only in Core
      1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
      2 <html>
      3 <head>
      4 <link rel="stylesheet" href="../../../js/resources/js-test-style.css">
      5 <script src="../../../js/resources/js-test-pre.js"></script>
      6 <script src="test.js"></script>
      7 </head>
      8 <body>
      9 <div id="console"></div>
     10 
     11 <script>
     12 /*
     13      IEEE 754 says:
     14     
     15        +-Infinity * +-Infinity = +-Infinity
     16        +-Infinity * 0 = NaN
     17     
     18        n div +-Infinity = 0
     19        +-nonzero div 0 = +-Infinity
     20        +-Infinity div +-Infinity = NaN
     21        +-0 div +-0 = NaN
     22     
     23        Infinity + Infinity = Infinity
     24        Infinity - Infinity = NaN
     25 */
     26     shouldBe('DOM.evaluate("-5 * 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-10');
     27     shouldBe('DOM.evaluate("-4 * -2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '8');
     28     shouldBe('DOM.evaluate("0 * 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0');
     29     shouldBe('DOM.evaluate("(1 div 0) * (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'Infinity');
     30     shouldBe('DOM.evaluate("(-1 div 0) * (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'Infinity');
     31     shouldBe('DOM.evaluate("(1 div 0) * (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-Infinity');
     32     shouldBe('DOM.evaluate("0 div 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0');
     33     shouldBe('DOM.evaluate("-5 div 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-2.5');
     34     shouldBe('DOM.evaluate("-4 div -2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '2');
     35     shouldBe('DOM.evaluate("0 div 0", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     36     shouldBe('DOM.evaluate("1 div 0", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'Infinity');
     37     shouldBe('DOM.evaluate("-1 div 0", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-Infinity');
     38     shouldBe('DOM.evaluate("0 div (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0');
     39     shouldBe('DOM.evaluate("1 div (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0');
     40     shouldBe('DOM.evaluate("-1 div (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-0');
     41     shouldBe('DOM.evaluate("0 div (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-0');
     42     shouldBe('DOM.evaluate("1 div (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-0');
     43     shouldBe('DOM.evaluate("-1 div (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0');
     44     shouldBe('DOM.evaluate("(1 div 0) div (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     45     shouldBe('DOM.evaluate("(1 div 0) div (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     46     shouldBe('DOM.evaluate("(-1 div 0) div (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     47     shouldBe('DOM.evaluate("(-1 div 0) div (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     48     shouldBe('DOM.evaluate("0 mod 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0');
     49     shouldBe('DOM.evaluate("5 mod 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '1');
     50     shouldBe('DOM.evaluate("5 mod -2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '1');
     51     shouldBe('DOM.evaluate("-5 mod 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-1');
     52     shouldBe('DOM.evaluate("-5 mod -2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-1');
     53     shouldBe('DOM.evaluate("1 mod 0", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     54     shouldBe('DOM.evaluate("0 mod 0", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     55     shouldBe('DOM.evaluate("(0 div 0) mod 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     56     shouldBe('DOM.evaluate("2 mod (0 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     57     shouldBe('DOM.evaluate("(1 div 0) mod 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     58     shouldBe('DOM.evaluate("(1 div 0) mod 0", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     59     shouldBe('DOM.evaluate("(1 div 0) mod (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     60     shouldBe('DOM.evaluate("42 mod (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '42');
     61     shouldBe('DOM.evaluate("0.5 mod 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0.5');
     62     shouldBe('DOM.evaluate("-0.5 mod 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-0.5');
     63     shouldBe('DOM.evaluate("2.5 mod 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0.5');
     64     shouldBe('DOM.evaluate("-2.5 mod 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-0.5');
     65     shouldBe('DOM.evaluate("5 mod 3", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '2');
     66     shouldBe('DOM.evaluate("5 mod -3", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '2');
     67     shouldBe('DOM.evaluate("-5 mod 3", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-2');
     68     shouldBe('DOM.evaluate("-5 mod -3", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-2');
     69 
     70     shouldBe('DOM.evaluate("5 + 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '7');
     71     shouldBe('DOM.evaluate("3 + -2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '1');
     72     shouldBe('DOM.evaluate("(1 div 0) + (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'Infinity');
     73     shouldBe('DOM.evaluate("5 - 2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '3');
     74     shouldBe('DOM.evaluate("3 - -2", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '5');
     75     shouldBe('DOM.evaluate("(1 div 0) - (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
     76 
     77     shouldBe('DOM.evaluate("- 5", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-5');
     78     shouldBe('DOM.evaluate("- (- 2)", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '2');
     79 
     80     shouldBe('DOM.evaluate("5 = 5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
     81     shouldBe('DOM.evaluate("5 = -5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     82     shouldBe('DOM.evaluate("-5 = -5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
     83     shouldBe('DOM.evaluate("0 = 0", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
     84     shouldBe('DOM.evaluate("(1 div 0) = (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
     85     shouldBe('DOM.evaluate("(-1 div 0) = (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
     86     shouldBe('DOM.evaluate("5 = (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     87     shouldBe('DOM.evaluate("5 = number(\'NaN\')", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     88     shouldBe('DOM.evaluate("number(\'NaN\') = number(\'NaN\')", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     89     shouldBe('DOM.evaluate("5 = @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     90     shouldBe('DOM.evaluate("31 = @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
     91 
     92     shouldBe('DOM.evaluate("5 != 5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     93     shouldBe('DOM.evaluate("5 != -5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
     94     shouldBe('DOM.evaluate("-5 != -5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     95     shouldBe('DOM.evaluate("0 != 0", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     96     shouldBe('DOM.evaluate("(1 div 0) != (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     97     shouldBe('DOM.evaluate("(-1 div 0) != (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
     98     shouldBe('DOM.evaluate("5 != (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
     99     shouldBe('DOM.evaluate("5 != number(\'NaN\')", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    100     shouldBe('DOM.evaluate("number(\'NaN\') != number(\'NaN\')", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    101     shouldBe('DOM.evaluate("5 != @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    102     shouldBe('DOM.evaluate("31 != @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    103 
    104     shouldBe('DOM.evaluate("5 < 5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    105     shouldBe('DOM.evaluate("5 <= 5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    106     shouldBe('DOM.evaluate("5 > 5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    107     shouldBe('DOM.evaluate("5 >= 5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    108     shouldBe('DOM.evaluate("5 < -5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    109     shouldBe('DOM.evaluate("5 <= -5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    110     shouldBe('DOM.evaluate("5 > -5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    111     shouldBe('DOM.evaluate("5 >= -5", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    112     shouldBe('DOM.evaluate("5 < 0", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    113     shouldBe('DOM.evaluate("5 <= 0", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    114     shouldBe('DOM.evaluate("5 > 0", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    115     shouldBe('DOM.evaluate("5 >= 0", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    116     shouldBe('DOM.evaluate("5 < (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    117     shouldBe('DOM.evaluate("5 <= (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    118     shouldBe('DOM.evaluate("5 > (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    119     shouldBe('DOM.evaluate("5 >= (1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    120     shouldBe('DOM.evaluate("5 < (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    121     shouldBe('DOM.evaluate("5 <= (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    122     shouldBe('DOM.evaluate("5 > (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    123     shouldBe('DOM.evaluate("5 >= (-1 div 0)", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    124     shouldBe('DOM.evaluate("5 < number(\'NaN\')", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    125     shouldBe('DOM.evaluate("5 <= number(\'NaN\')", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    126     shouldBe('DOM.evaluate("5 > number(\'NaN\')", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    127     shouldBe('DOM.evaluate("5 >= number(\'NaN\')", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    128     shouldBe('DOM.evaluate("5 < @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    129     shouldBe('DOM.evaluate("5 <= @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    130     shouldBe('DOM.evaluate("5 > @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    131     shouldBe('DOM.evaluate("5 >= @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    132 
    133     shouldBe('DOM.evaluate("\'-5\' * \'2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-10');
    134     shouldBe('DOM.evaluate("\'-4\' * \'-2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '8');
    135     shouldBe('DOM.evaluate("\'0\' * \'2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0');
    136     shouldBe('DOM.evaluate("\'1\' * \'1\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '1');
    137     shouldBe('DOM.evaluate("\'3.1415926535\' * \'1\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '3.1415926535');
    138     shouldBe('DOM.evaluate("\'\' * \'1\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
    139     shouldBe('DOM.evaluate("\'Hi\' * \'1\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
    140     shouldBe('DOM.evaluate("\'NaN\' * \'1\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
    141     shouldBe('DOM.evaluate("\'\u2022 = middle dot\' * \'1\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
    142     shouldBe('DOM.evaluate("\'0\' div \'2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0');
    143     shouldBe('DOM.evaluate("\'1\' div \'1\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '1');
    144     shouldBe('DOM.evaluate("\'-5\' div \'2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-2.5');
    145     shouldBe('DOM.evaluate("\'-4\' div \'-2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '2');
    146     shouldBe('DOM.evaluate("\'0\' div \'0\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'NaN');
    147     shouldBe('DOM.evaluate("\'1\' div \'0\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', 'Infinity');
    148     shouldBe('DOM.evaluate("\'-1\' div \'0\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-Infinity');
    149     shouldBe('DOM.evaluate("\'0\' mod \'2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '0');
    150     shouldBe('DOM.evaluate("\'5\' mod \'2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '1');
    151     shouldBe('DOM.evaluate("\'5\' mod \'-2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '1');
    152     shouldBe('DOM.evaluate("\'-5\' mod \'2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-1');
    153     shouldBe('DOM.evaluate("\'-5\' mod \'-2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-1');
    154 
    155     shouldBe('DOM.evaluate("\'5\' + \'2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '7');
    156     shouldBe('DOM.evaluate("\'3\' + \'-2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '1');
    157     shouldBe('DOM.evaluate("\'5\' - \'2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '3');
    158     shouldBe('DOM.evaluate("\'3\' - \'-2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '5');
    159 
    160     shouldBe('DOM.evaluate("-\'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '-5');
    161     shouldBe('DOM.evaluate("-\'-2\'", CHILD1, null, XPathResult.ANY_TYPE, null).numberValue', '2');
    162 
    163     shouldBe('DOM.evaluate("\'5\' = \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    164     shouldBe('DOM.evaluate("\'5\' = \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    165     shouldBe('DOM.evaluate("\'-5\' = \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    166     shouldBe('DOM.evaluate("\'0\' = \'0\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    167     shouldBe('DOM.evaluate("\'Hi\' = \'Hi\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    168     shouldBe('DOM.evaluate("\'5\' = \'Hi\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    169     shouldBe('DOM.evaluate("\'5\' = \'NaN\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    170     shouldBe('DOM.evaluate("\'NaN\' = \'NaN\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    171     shouldBe('DOM.evaluate("\'5\' = @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    172     shouldBe('DOM.evaluate("\'31\' = @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    173 
    174     shouldBe('DOM.evaluate("\'5\' != \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    175     shouldBe('DOM.evaluate("\'5\' != \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    176     shouldBe('DOM.evaluate("\'-5\' != \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    177     shouldBe('DOM.evaluate("\'0\' != \'0\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    178     shouldBe('DOM.evaluate("\'5\' != \'Hi\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    179     shouldBe('DOM.evaluate("\'5\' != number(\'NaN\')", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    180     shouldBe('DOM.evaluate("\'NaN\' != \'NaN\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    181     shouldBe('DOM.evaluate("\'5\' != @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    182     shouldBe('DOM.evaluate("\'31\' != @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    183 
    184     shouldBe('DOM.evaluate("5 < \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    185     shouldBe('DOM.evaluate("31 < \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    186     shouldBe('DOM.evaluate("\'5\' < \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    187     shouldBe('DOM.evaluate("\'31\' < \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    188     shouldBe('DOM.evaluate("5 <= \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    189     shouldBe('DOM.evaluate("31 <= \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    190     shouldBe('DOM.evaluate("\'5\' <= \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    191     shouldBe('DOM.evaluate("\'31\' <= \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    192     shouldBe('DOM.evaluate("5 > \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    193     shouldBe('DOM.evaluate("31 > \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    194     shouldBe('DOM.evaluate("\'5\' > \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    195     shouldBe('DOM.evaluate("\'31\' > \'5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    196     shouldBe('DOM.evaluate("5 < \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    197     shouldBe('DOM.evaluate("31 < \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    198     shouldBe('DOM.evaluate("\'5\' < \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    199     shouldBe('DOM.evaluate("\'31\' < \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    200     shouldBe('DOM.evaluate("5 <= \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    201     shouldBe('DOM.evaluate("31 <= \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    202     shouldBe('DOM.evaluate("\'5\' <= \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    203     shouldBe('DOM.evaluate("\'31\' <= \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    204     shouldBe('DOM.evaluate("5 > \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    205     shouldBe('DOM.evaluate("31 > \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    206     shouldBe('DOM.evaluate("\'5\' > \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    207     shouldBe('DOM.evaluate("\'31\' > \'-5\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    208     shouldBe('DOM.evaluate("\'5\' < \'Hi\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    209     shouldBe('DOM.evaluate("\'5\' <= \'Hi\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    210     shouldBe('DOM.evaluate("\'5\' > \'Hi\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    211     shouldBe('DOM.evaluate("\'5\' >= \'Hi\'", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    212     shouldBe('DOM.evaluate("\'5\' < @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    213     shouldBe('DOM.evaluate("\'5\' <= @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'true');
    214     shouldBe('DOM.evaluate("\'5\' > @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    215     shouldBe('DOM.evaluate("\'5\' >= @attr31", CHILD1, null, XPathResult.ANY_TYPE, null).booleanValue', 'false');
    216 
    217     var successfullyParsed = true;
    218 
    219 </script>
    220 <script src="../../../js/resources/js-test-post.js"></script>
    221 </body>
    222 </html>
    223