window.tests.set('pairCyclicWeakMap', (function() { var garbage = []; var garbageIndex = 0; return { description: "wm1[k1] = k2; wm2[k2] = k3; wm1[k3] = k4; wm2[k4] = ...", defaultGarbagePerFrame: "1K", defaultGarbageTotal: "1K", load: (N) => { garbage = new Array(N); }, unload: () => { garbage = []; garbageIndex = 0; }, makeGarbage: (M) => { var wm1 = new WeakMap(); var wm2 = new WeakMap(); var initialKey = {}; var key = initialKey; var value = {}; for (var i = 0; i < M/2; i++) { wm1.set(key, value); key = value; value = {}; wm2.set(key, value); key = value; value = {}; } garbage[garbageIndex++] = [ initialKey, wm1, wm2 ]; if (garbageIndex == garbage.length) garbageIndex = 0; } }; })());