blob: 9e31b07a109f2003fcfec41f6a2bd2b61c06f62d [file] [log] [blame]
<html>
<head>
<script>
if (window.testRunner)
testRunner.dumpAsText();
log = function(msg)
{
document.getElementById('console').appendChild(document.createTextNode(msg + "\n"));
}
shouldThrow = function(_a)
{
try {
eval(_a);
log("FAIL: " + _a + " did not throw");
} catch(ex) {
log("PASS: " + _a + " throws: " + ex);
}
}
shouldNotThrow = function(_a)
{
try {
eval(_a);
log("PASS: " + _a + " did not throw");
} catch(ex) {
log("FAIL: " + _a + " throws: " + ex);
}
}
onload = function()
{
shouldThrow("document.querySelector('bbb|pre')");
shouldThrow("document.querySelectorAll('bbb|pre')");
shouldThrow("document.body.matches('bbb|pre')");
shouldThrow("document.body.webkitMatchesSelector('bbb|pre')");
shouldNotThrow("document.querySelector('*|pre')");
shouldNotThrow("document.querySelectorAll('*|pre')");
shouldNotThrow("document.body.matches('*|pre')");
shouldNotThrow("document.body.webkitMatchesSelector('*|pre')");
shouldNotThrow("document.querySelector('|pre')");
shouldNotThrow("document.querySelectorAll('|pre')");
shouldNotThrow("document.body.matches('|pre')");
shouldNotThrow("document.body.webkitMatchesSelector('|pre')");
shouldThrow("document.querySelector('div bbb|pre')");
shouldThrow("document.querySelectorAll('div bbb|pre')");
shouldThrow("document.body.matches('div bbb|pre')");
shouldThrow("document.body.webkitMatchesSelector('div bbb|pre')");
shouldNotThrow("document.querySelector('div *|pre')");
shouldNotThrow("document.querySelectorAll('div *|pre')");
shouldNotThrow("document.body.matches('div *|pre')");
shouldNotThrow("document.body.webkitMatchesSelector('div *|pre')");
shouldNotThrow("document.querySelector('div |pre')");
shouldNotThrow("document.querySelectorAll('div |pre')");
shouldNotThrow("document.body.matches('div |pre')");
shouldNotThrow("document.body.webkitMatchesSelector('div |pre')");
shouldThrow("document.querySelector('[bbb|name=value]')");
shouldThrow("document.querySelectorAll('[bbb|name=value]')");
shouldThrow("document.body.matches('[bbb|name=value]')");
shouldThrow("document.body.webkitMatchesSelector('[bbb|name=value]')");
shouldNotThrow("document.querySelector('[*|name=value]')");
shouldNotThrow("document.querySelectorAll('[*|name=value]')");
shouldNotThrow("document.body.matches('[*|name=value]')");
shouldNotThrow("document.body.webkitMatchesSelector('[*|name=value]')");
shouldNotThrow("document.querySelector('[|name=value]')");
shouldNotThrow("document.querySelectorAll('[|name=value]')");
shouldNotThrow("document.body.matches('[|name=value]')");
shouldNotThrow("document.body.webkitMatchesSelector('[|name=value]')");
shouldNotThrow("document.querySelector(':-webkit-any(bbb|pre)')");
shouldThrow("document.querySelector('div [bbb|name=value]')");
shouldThrow("document.querySelectorAll('div [bbb|name=value]')");
shouldThrow("document.body.matches('div [bbb|name=value]')");
shouldThrow("document.body.webkitMatchesSelector('div [bbb|name=value]')");
shouldNotThrow("document.querySelector('div [*|name=value]')");
shouldNotThrow("document.querySelectorAll('div [*|name=value]')");
shouldNotThrow("document.body.matches('div [*|name=value]')");
shouldNotThrow("document.body.webkitMatchesSelector('div [*|name=value]')");
shouldNotThrow("document.querySelector('div [|name=value]')");
shouldNotThrow("document.querySelectorAll('div [|name=value]')");
shouldNotThrow("document.body.matches('div [|name=value]')");
shouldNotThrow("document.body.webkitMatchesSelector('div [|name=value]')");
}
</script>
</head>
<body>
<p>This tests that we throw a NAMESPACE_ERR when parsing a selector string for querySelector and querySelectorAll
that contains a namespace.</p>
<pre id="console" name="value"></pre>
</body>
</html>