tor-browser

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

andOr.js (779B)


      1 function testBooleans(a, b) {
      2    var res = 0;
      3    if (a && b) res += 2;
      4    if (b || a) res += 1;
      5    return res;
      6 }
      7 assertEq(testBooleans(false, false), 0);
      8 assertEq(testBooleans(false, true), 1);
      9 assertEq(testBooleans(true, false), 1);
     10 assertEq(testBooleans(true, true), 3);
     11 
     12 function testShortCircuit(a) {
     13    var b = 0;
     14    ++a && a++;
     15    a || (b = 100);
     16    return a + b;
     17 }
     18 assertEq(testShortCircuit(0), 2);
     19 assertEq(testShortCircuit(-2), 100);
     20 assertEq(testShortCircuit(-1), 100);
     21 
     22 function testValues(a, b) {
     23    if (a && b) return 2;
     24    if (b || a) return 1;
     25    return 0;
     26 }
     27 assertEq(testValues(false, true), 1);
     28 assertEq(testValues("foo", 22), 2);
     29 assertEq(testValues(null, ""), 0);
     30 assertEq(testValues(Math.PI, undefined), 1);
     31 assertEq(testValues(Math.abs, 2.2), 2);