This test case ensures that nameNodeListCache should be invalidate when name attribute changes.

PASS createTwoElements('a'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('a').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('applet'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('applet').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('embed'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('embed').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('section'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('section').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('frame'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('frame').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('form'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('form').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('iframe'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('iframe').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('img'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('img').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('map'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('map').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('meta'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('meta').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('object'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('object').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS createTwoElements('param'); document.getElementsByName('fullname').length is 2
PASS document.querySelector('param').setAttribute('name', 'changed-name'); document.getElementsByName('fullname').length is 1


PASS successfullyParsed is true

TEST COMPLETE

