tor-browser

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

testPropCallElem.js (2313B)


      1 // vim: set ts=8 sts=4 et sw=4 tw=99:
      2 
      3 function testUKeyUObject(a, key1, key2, key3) {
      4    a.a = function () { return this.d; }
      5    a.b = function () { return this.e; }
      6    a.c = function() { return this.f; }
      7    a.d = 20;
      8    a.e = "hi";
      9    a.f = 500;
     10    assertEq(a[key1](), 20);
     11    assertEq(a[key2](), "hi");
     12    assertEq(a[key3](), 500);
     13 }
     14 
     15 function testVKeyUObject(a, key1, key2, key3) {
     16    a.a = function () { return this.d; }
     17    a.b = function () { return this.e; }
     18    a.c = function() { return this.f; }
     19    a.d = 20;
     20    a.e = "hi";
     21    a.f = 500;
     22    assertEq(a["" + key1](), 20);
     23    assertEq(a["" + key2](), "hi");
     24    assertEq(a["" + key3](), 500);
     25 }
     26 
     27 function testKKeyUObject(a) {
     28    a.a = function () { return this.d; }
     29    a.b = function () { return this.e; }
     30    a.c = function() { return this.f; }
     31    a.d = 20;
     32    a.e = "hi";
     33    a.f = 500;
     34    var key1 = "a";
     35    var key2 = "b";
     36    var key3 = "c";
     37    assertEq(a[key1](), 20);
     38    assertEq(a[key2](), "hi");
     39    assertEq(a[key3](), 500);
     40 }
     41 
     42 function testUKeyVObject(key1, key2, key3) {
     43    a = { a: function () { return this.d; },
     44          b: function () { return this.e; },
     45          c: function () { return this.f; },
     46          d: 20,
     47          e: "hi",
     48          f: 500
     49    };
     50    assertEq(a[key1](), 20);
     51    assertEq(a[key2](), "hi");
     52    assertEq(a[key3](), 500);
     53 }
     54 
     55 function testVKeyVObject(key1, key2, key3) {
     56    a = { a: function () { return this.d; },
     57          b: function () { return this.e; },
     58          c: function () { return this.f; },
     59          d: 20,
     60          e: "hi",
     61          f: 500
     62    };
     63    assertEq(a["" + key1](), 20);
     64    assertEq(a["" + key2](), "hi");
     65    assertEq(a["" + key3](), 500);
     66 }
     67 
     68 function testKKeyVObject(a) {
     69    a = { a: function () { return this.d; },
     70          b: function () { return this.e; },
     71          c: function () { return this.f; },
     72          d: 20,
     73          e: "hi",
     74          f: 500
     75    };
     76    var key1 = "a";
     77    var key2 = "b";
     78    var key3 = "c";
     79    assertEq(a[key1](), 20);
     80    assertEq(a[key2](), "hi");
     81    assertEq(a[key3](), 500);
     82 }
     83 
     84 for (var i = 0; i < 5; i++) {
     85    testUKeyUObject({}, "a", "b", "c");
     86    testVKeyUObject({}, "a", "b", "c");
     87    testKKeyUObject({});
     88    testUKeyVObject("a", "b", "c");
     89    testVKeyVObject("a", "b", "c");
     90    testKKeyVObject();
     91 }