// Test basic usage of `Debugger.Memory.prototype.allocationsLogOverflowed`. const root = newGlobal(); const dbg = new Debugger(root); dbg.memory.trackingAllocationSites = true; dbg.memory.maxAllocationsLogLength = 1; root.eval("(" + function immediate() { // Allocate more than the max log length. this.objs = [{}, {}, {}, {}]; } + "());"); // The log should have overflowed. assertEq(dbg.memory.allocationsLogOverflowed, true); // Once drained, the flag should be reset. const allocs = dbg.memory.drainAllocationsLog(); assertEq(dbg.memory.allocationsLogOverflowed, false); // If we keep allocations under the max log length, then we shouldn't have // overflowed. dbg.memory.maxAllocationsLogLength = 10000; root.eval("this.objs = [{}, {}, {}, {}];"); assertEq(dbg.memory.allocationsLogOverflowed, false);