Bug 1523562 [wpt PR 15088] - Unclosed Constructs Are Valid, a=testonly
authorTab Atkins Jr <jackalmage@gmail.com>
Fri, 01 Feb 2019 11:40:05 +0000
changeset 458162 883b4380d8f7dcae04e56bf94e4ae5c6d5ff25a9
parent 458161 8ae4b30873b5b39df908ed7da12767212cebcb57
child 458163 da088cd0383dd5553dd028ac04a135a35100e422
push id35518
push useropoprus@mozilla.com
push dateFri, 08 Feb 2019 09:55:14 +0000
treeherdermozilla-central@3a3e393396f4 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstestonly
bugs1523562, 15088
milestone67.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1523562 [wpt PR 15088] - Unclosed Constructs Are Valid, a=testonly Automatic update from web-platform-tests Unclosed Constructs Are Valid Tests <https://github.com/w3c/csswg-drafts/issues/1933> -- Merge pull request #15088 from web-platform-tests/tabatkins-patch-6 Unclosed Constructs Are Valid -- wpt-commits: 7f2a09e08bb41532cd8d816da836e3dbe3100d42, 9b18bc8291eeb8ec670e14f9c465bff425cfdb5c wpt-pr: 15088
testing/web-platform/tests/css/css-syntax/unclosed-constructs.html
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/css/css-syntax/unclosed-constructs.html
@@ -0,0 +1,36 @@
+<!doctype html>
+<title>Unclosed Constructs Are Valid</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<meta name="author" title="Tab Atkins-Bittner">
+<link rel=help href="https://drafts.csswg.org/css-syntax/#rule-defs">
+
+<!--
+Tests that unclosed constructs are valid and match grammars,
+because grammar-matching only sees the "block",
+not the opening/closing characters themselves.
+-->
+
+<script>
+
+function validSelector(str) {
+    try {
+        document.querySelector(str);
+        return true;
+    } catch(e) {
+        return false;
+    }
+}
+function shouldBeValid(str) {
+    test(()=>{
+        assert_true(validSelector(str));
+    }, `"${str}" is a valid selector`)
+}
+
+shouldBeValid("[foo]");
+shouldBeValid("[foo");
+shouldBeValid(":nth-child(1)");
+shouldBeValid(":nth-child(1");
+
+</script>