30 lines
754 B
HTML
30 lines
754 B
HTML
|
<!DOCTYPE html>
|
||
|
<html>
|
||
|
<body>
|
||
|
<p>This tests allocating 1000 elements and triggering GC. GC should collect some elements.</p>
|
||
|
<script>
|
||
|
|
||
|
if (!window.internals)
|
||
|
document.write('This test requires internals');
|
||
|
else {
|
||
|
testRunner.dumpAsText();
|
||
|
|
||
|
const initialNodeCount = internals.numberOfLiveNodes();
|
||
|
|
||
|
const testCount = 1000;
|
||
|
(() => {
|
||
|
for (let i = 0; i < testCount; ++i)
|
||
|
document.createElement('div').attributeStyleMap;
|
||
|
})();
|
||
|
|
||
|
if (window.GCController)
|
||
|
GCController.collect();
|
||
|
|
||
|
const nodeCountDiff = internals.numberOfLiveNodes() - initialNodeCount;
|
||
|
document.write(nodeCountDiff < testCount / 1.5 ? 'PASS' : `FAIL - ${nodeCountDiff} nodes alive after triggering GC`);
|
||
|
}
|
||
|
|
||
|
</script>
|
||
|
</body>
|
||
|
</html>
|