Test tagname's case-sensitivity when matching SVG-in-XHTML with Element.matches().

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


Basic cases, tagname alone.
PASS document.getElementById('container1').matches('Container') is false
PASS document.getElementById('container1').matches('container') is false
PASS document.getElementById('container1').matches('CONTAINER') is true
PASS document.getElementById('container2').matches('Container') is false
PASS document.getElementById('container2').matches('container') is true
PASS document.getElementById('container2').matches('CONTAINER') is false
PASS document.getElementById('container3').matches('Container') is true
PASS document.getElementById('container3').matches('container') is false
PASS document.getElementById('container3').matches('CONTAINER') is false
PASS document.getElementById('container4').matches('Container') is false
PASS document.getElementById('container4').matches('container') is false
PASS document.getElementById('container4').matches('CONTAINER') is true
PASS document.getElementById('container5').matches('Container') is false
PASS document.getElementById('container5').matches('container') is true
PASS document.getElementById('container5').matches('CONTAINER') is false
PASS document.getElementById('container6').matches('Container') is true
PASS document.getElementById('container6').matches('container') is false
PASS document.getElementById('container6').matches('CONTAINER') is false
PASS document.getElementById('container7').matches('Container') is false
PASS document.getElementById('container7').matches('container') is false
PASS document.getElementById('container7').matches('CONTAINER') is true
PASS document.getElementById('container8').matches('Container') is false
PASS document.getElementById('container8').matches('container') is true
PASS document.getElementById('container8').matches('CONTAINER') is false
PASS document.getElementById('container9').matches('Container') is true
PASS document.getElementById('container9').matches('container') is false
PASS document.getElementById('container9').matches('CONTAINER') is false

Complex selectors
PASS document.getElementById('container1').matches('div Container') is false
PASS document.getElementById('container1').matches('div container') is false
PASS document.getElementById('container1').matches('div CONTAINER') is true
PASS document.getElementById('container2').matches('div Container') is false
PASS document.getElementById('container2').matches('div container') is true
PASS document.getElementById('container2').matches('div CONTAINER') is false
PASS document.getElementById('container3').matches('div Container') is true
PASS document.getElementById('container3').matches('div container') is false
PASS document.getElementById('container3').matches('div CONTAINER') is false
PASS document.getElementById('container4').matches('div Container') is false
PASS document.getElementById('container4').matches('div container') is false
PASS document.getElementById('container4').matches('div CONTAINER') is true
PASS document.getElementById('container5').matches('div Container') is false
PASS document.getElementById('container5').matches('div container') is true
PASS document.getElementById('container5').matches('div CONTAINER') is false
PASS document.getElementById('container6').matches('div Container') is true
PASS document.getElementById('container6').matches('div container') is false
PASS document.getElementById('container6').matches('div CONTAINER') is false
PASS document.getElementById('container7').matches('div Container') is false
PASS document.getElementById('container7').matches('div container') is false
PASS document.getElementById('container7').matches('div CONTAINER') is true
PASS document.getElementById('container8').matches('div Container') is false
PASS document.getElementById('container8').matches('div container') is true
PASS document.getElementById('container8').matches('div CONTAINER') is false
PASS document.getElementById('container9').matches('div Container') is true
PASS document.getElementById('container9').matches('div container') is false
PASS document.getElementById('container9').matches('div CONTAINER') is false
PASS successfullyParsed is true

TEST COMPLETE

