Tests breakable locations in object destructuring.

Running test: testBreakLocations

function testFunction() {
  var {a, b, c = 4} = |_|obj1;
  |_|({d: {a, b}, c} = obj2);
  |_|({a, ...b} = obj1);
|R|}

var obj1 = |_|{
  get a() { |_|return 1;|R| },
  get b() { |_|return 2;|R| },
};

var obj2 = |_|{
  get c() { |_|return 3;|R| },
  get d() { |_|return obj1;|R| },
};
|R|


Running test: testStepping
Execution paused in testFunction:
function testFunction() {
  var {a, b, c = 4} = #obj1;
  ({d: {a, b}, c} = obj2);

Execution paused in get a:
var obj1 = {
  get a() { #return 1; },
  get b() { return 2; },

Called from testFunction:
function testFunction() {
  var {#a, b, c = 4} = obj1;
  ({d: {a, b}, c} = obj2);

Execution paused in get b:
  get a() { return 1; },
  get b() { #return 2; },
};

Called from testFunction:
function testFunction() {
  var {a, #b, c = 4} = obj1;
  ({d: {a, b}, c} = obj2);

Execution paused in testFunction:
  var {a, b, c = 4} = obj1;
  #({d: {a, b}, c} = obj2);
  ({a, ...b} = obj1);

Execution paused in get d:
  get c() { return 3; },
  get d() { #return obj1; },
};

Called from testFunction:
  var {a, b, c = 4} = obj1;
  ({d: #{a, b}, c} = obj2);
  ({a, ...b} = obj1);

Execution paused in get a:
var obj1 = {
  get a() { #return 1; },
  get b() { return 2; },

Called from testFunction:
  var {a, b, c = 4} = obj1;
  ({d: {#a, b}, c} = obj2);
  ({a, ...b} = obj1);

Execution paused in get b:
  get a() { return 1; },
  get b() { #return 2; },
};

Called from testFunction:
  var {a, b, c = 4} = obj1;
  ({d: {a, #b}, c} = obj2);
  ({a, ...b} = obj1);

Execution paused in get c:
var obj2 = {
  get c() { #return 3; },
  get d() { return obj1; },

Called from testFunction:
  var {a, b, c = 4} = obj1;
  ({d: {a, b}, #c} = obj2);
  ({a, ...b} = obj1);

Execution paused in testFunction:
  ({d: {a, b}, c} = obj2);
  #({a, ...b} = obj1);
}

Execution paused in get a:
var obj1 = {
  get a() { #return 1; },
  get b() { return 2; },

Called from testFunction:
  ({d: {a, b}, c} = obj2);
  ({#a, ...b} = obj1);
}

Execution paused in get b:
  get a() { return 1; },
  get b() { #return 2; },
};

Called from testFunction:
  ({d: {a, b}, c} = obj2);
  ({a, ...#b} = obj1);
}

Execution paused in testFunction:
  ({a, ...b} = obj1);
#}


Resuming and finishing...
