chromium/third_party/blink/web_tests/fast/dom/htmlcollection-reachable.html

<!DOCTYPE html>
<script src="../../resources/js-test.js"></script>
<form></form>
<table><tbody><tr></tr></tbody></table>
<fieldset></fieldset>
<select></select>
<datalist></datalist>
<map></map>
<script>

var datalist = document.querySelector('datalist');
var element = document.createElement('span');
var fieldset = document.querySelector('fieldset');
var form = document.querySelector('form');
var map = document.querySelector('map');
var section = document.querySelector('tbody');
var select = document.querySelector('select');
var table = document.querySelector('table');
var tableRow = document.querySelector('tr');

var collections = [
    // datalist is not enabled by default.
    // 'datalist.options',
    'document.anchors',
    'document.applets',
    'document.embeds',
    'document.forms',
    'document.images',
    'document.links',
    'document.plugins',
    'document.scripts',
    'element.children',
    'fieldset.elements',
    'form.elements',
    'map.areas',
    'section.rows',
    'select.selectedOptions',
    'table.rows',
    'table.tBodies',
    'tableRow.cells',
];

// Note: as document.plugins is [ImplementedAs=embeds],
// use customProperty{i} to ensure uniqueness.
for (var i = 0; i < collections.length; ++i)
    eval(collections[i])['customProperty' + i] = i;

gc();

for (var i = 0; i < collections.length; ++i)
    shouldBe(collections[i] + '.customProperty' + i, '' + i);
</script>