tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

toLength.js (1203B)


      1 // |reftest| skip-if(!xulRuntime.shell)
      2 var BUGNUMBER = 1040196;
      3 var summary = 'ToLength';
      4 
      5 print(BUGNUMBER + ": " + summary);
      6 
      7 var ToLength = getSelfHostedValue('ToLength');
      8 
      9 // Negative operands
     10 assertEq(ToLength(-0), 0);
     11 assertEq(ToLength(-1), 0);
     12 assertEq(ToLength(-2), 0);
     13 assertEq(ToLength(-1 * Math.pow(2, 56)), 0);
     14 assertEq(ToLength(-1 * Math.pow(2, 56) - 2), 0);
     15 assertEq(ToLength(-1 * Math.pow(2, 56) - 2.4444), 0);
     16 assertEq(ToLength(-Infinity), 0);
     17 
     18 // Small non-negative operands
     19 assertEq(ToLength(0), 0);
     20 assertEq(ToLength(1), 1);
     21 assertEq(ToLength(2), 2);
     22 assertEq(ToLength(3.3), 3);
     23 assertEq(ToLength(10/3), 3);
     24 
     25 // Large non-negative operands
     26 var maxLength = Math.pow(2, 53) - 1;
     27 assertEq(ToLength(maxLength - 1), maxLength - 1);
     28 assertEq(ToLength(maxLength - 0.0000001), maxLength);
     29 assertEq(ToLength(maxLength), maxLength);
     30 assertEq(ToLength(maxLength + 0.00000000000001), maxLength);
     31 assertEq(ToLength(maxLength + 1), maxLength);
     32 assertEq(ToLength(maxLength + 2), maxLength);
     33 assertEq(ToLength(Math.pow(2,54)), maxLength);
     34 assertEq(ToLength(Math.pow(2,64)), maxLength);
     35 assertEq(ToLength(Infinity), maxLength);
     36 
     37 // NaN operand
     38 assertEq(ToLength(NaN), 0);
     39 
     40 
     41 reportCompare(0, 0, "ok");