<html>
<head>
<title>fast/dom/SelectorAPI/caseTag.html</title>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
</head>
<body>
    <div style="display: none">
    <span id="lower1">lower</span><br>
    <P id="UPPER1">UPPER</P><br>
    </div>
    <script>
      setup({ single_test: true });
      assert_equals(document.querySelector('div SPAN').textContent, 'lower');
      assert_equals(document.querySelector('div p').textContent, 'UPPER');

      assert_true(document.getElementById('lower1').webkitMatchesSelector('div SPAN'));
      assert_true(document.getElementById('UPPER1').webkitMatchesSelector('div p'));
      done();
</script>
</body>
</html>
