tor-browser

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

using-in-if.js (734B)


      1 // |jit-test| skip-if: !getBuildConfiguration("explicit-resource-management"); --enable-explicit-resource-management
      2 
      3 load(libdir + "asserts.js");
      4 
      5 let disposedInIf = [];
      6 function testDisposalsInIf(ifTrue) {
      7  using a = {
      8    [Symbol.dispose]: () => disposedInIf.push("a")
      9  };
     10 
     11  if (ifTrue) {
     12    using b = {
     13      [Symbol.dispose]: () => disposedInIf.push("b")
     14    };
     15  } else {
     16    using c = {
     17      [Symbol.dispose]: () => disposedInIf.push("c")
     18    };
     19  }
     20 
     21  using d = {
     22    [Symbol.dispose]: () => disposedInIf.push("d")
     23  };
     24 
     25  disposedInIf.push("e");
     26 }
     27 testDisposalsInIf(true);
     28 assertArrayEq(disposedInIf, ["b", "e", "d", "a"]);
     29 disposedInIf = [];
     30 testDisposalsInIf(false);
     31 assertArrayEq(disposedInIf, ["c", "e", "d", "a"]);