tor-browser

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

Debugger-onPromiseSettled-03.js (929B)


      1 // onPromiseSettled handlers on different Debugger instances are independent.
      2 var g = newGlobal({newCompartment: true});
      3 var dbg1 = new Debugger(g);
      4 var log1;
      5 function h1(promise) {
      6  log1 += 's';
      7  assertEq(promise.seen, undefined);
      8  promise.seen = true;
      9 }
     10 
     11 var dbg2 = new Debugger(g);
     12 var log2;
     13 function h2(promise) {
     14  log2 += 's';
     15  assertEq(promise.seen, undefined);
     16  promise.seen = true;
     17 }
     18 
     19 log1 = log2 = '';
     20 g.settlePromiseNow(new g.Promise(function (){}));
     21 assertEq(log1, '');
     22 assertEq(log2, '');
     23 
     24 log1 = log2 = '';
     25 dbg1.onPromiseSettled = h1;
     26 g.settlePromiseNow(new g.Promise(function (){}));
     27 assertEq(log1, 's');
     28 assertEq(log2, '');
     29 
     30 log1 = log2 = '';
     31 dbg2.onPromiseSettled = h2;
     32 g.settlePromiseNow(new g.Promise(function (){}));
     33 assertEq(log1, 's');
     34 assertEq(log2, 's');
     35 
     36 log1 = log2 = '';
     37 dbg1.onPromiseSettled = undefined;
     38 g.settlePromiseNow(new g.Promise(function (){}));
     39 assertEq(log1, '');
     40 assertEq(log2, 's');