summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-namespaces
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/css/css-namespaces')
-rw-r--r--testing/web-platform/tests/css/css-namespaces/META.yml5
-rw-r--r--testing/web-platform/tests/css/css-namespaces/README3
-rw-r--r--testing/web-platform/tests/css/css-namespaces/prefix-001.xml20
-rw-r--r--testing/web-platform/tests/css/css-namespaces/prefix-002.xml17
-rw-r--r--testing/web-platform/tests/css/css-namespaces/prefix-003.xml15
-rw-r--r--testing/web-platform/tests/css/css-namespaces/prefix-004.xml18
-rw-r--r--testing/web-platform/tests/css/css-namespaces/prefix-005.xml18
-rw-r--r--testing/web-platform/tests/css/css-namespaces/prefix-006.xml23
-rw-r--r--testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-block.xml10
-rw-r--r--testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-generic.xml11
-rw-r--r--testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1.xml10
-rw-r--r--testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2-generic.xml13
-rw-r--r--testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2.xml11
-rw-r--r--testing/web-platform/tests/css/css-namespaces/reference/ref-lime-3.xml12
-rw-r--r--testing/web-platform/tests/css/css-namespaces/reference/ref-lime-5.xml14
-rw-r--r--testing/web-platform/tests/css/css-namespaces/reference/ref-lime-6.xml15
-rw-r--r--testing/web-platform/tests/css/css-namespaces/scope-001.xml20
-rw-r--r--testing/web-platform/tests/css/css-namespaces/scope-002.xml21
-rw-r--r--testing/web-platform/tests/css/css-namespaces/support/LOCK1
-rw-r--r--testing/web-platform/tests/css/css-namespaces/support/fail.css1
-rw-r--r--testing/web-platform/tests/css/css-namespaces/support/scope-002a.css3
-rw-r--r--testing/web-platform/tests/css/css-namespaces/support/scope-002b.css2
-rw-r--r--testing/web-platform/tests/css/css-namespaces/support/syntax-007.css5
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-001.xml16
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-002.xml16
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-003.xml39
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-004.xml17
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-005.xml27
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-006.xml20
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-007.xml13
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-008.xml23
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-009.xml18
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-010.xml36
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-011.xml47
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-012.xml31
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-013.xml44
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-014.xml31
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-015.xml18
-rw-r--r--testing/web-platform/tests/css/css-namespaces/syntax-016.xml22
39 files changed, 686 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-namespaces/META.yml b/testing/web-platform/tests/css/css-namespaces/META.yml
new file mode 100644
index 0000000000..b625e16a9c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/META.yml
@@ -0,0 +1,5 @@
+spec: https://drafts.csswg.org/css-namespaces/
+suggested_reviewers:
+ - plinss
+ - dbaron
+ - fantasai
diff --git a/testing/web-platform/tests/css/css-namespaces/README b/testing/web-platform/tests/css/css-namespaces/README
new file mode 100644
index 0000000000..f39c48d05b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/README
@@ -0,0 +1,3 @@
+These are tests for the CSS Namespaces Module:
+
+ http://www.w3.org/TR/css-namespaces-3/
diff --git a/testing/web-platform/tests/css/css-namespaces/prefix-001.xml b/testing/web-platform/tests/css/css-namespaces/prefix-001.xml
new file mode 100644
index 0000000000..eb717139e1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/prefix-001.xml
@@ -0,0 +1,20 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#prefixes"/>
+ <link rel="match" href="reference/ref-lime-1.xml"/>
+ <title>CSS Namespaces Test Suite: prefix case-sensitivity</title>
+ <style>
+ @namespace Foo "y";
+ @namespace foo "x";
+ test { background:red }
+ Foo|test { background:lime }
+ foo|test { background:red }
+ FOO|test { background:red }
+ </style>
+ </head>
+ <body>
+ <p><test xmlns="y">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/prefix-002.xml b/testing/web-platform/tests/css/css-namespaces/prefix-002.xml
new file mode 100644
index 0000000000..49ca7c0a9e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/prefix-002.xml
@@ -0,0 +1,17 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#prefixes"/>
+ <link rel="match" href="reference/ref-lime-1.xml"/>
+ <title>CSS Namespaces Test Suite: empty string prefix (Explicit element namespace)</title>
+ <style>
+ @namespace foo "";
+ t { background:red }
+ foo|t { background:lime }
+ </style>
+ </head>
+ <body>
+ <p><t xmlns="">This sentence should have a green background.</t></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/prefix-003.xml b/testing/web-platform/tests/css/css-namespaces/prefix-003.xml
new file mode 100644
index 0000000000..2f23ad4c06
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/prefix-003.xml
@@ -0,0 +1,15 @@
+<root>
+ <head xmlns="http://www.w3.org/1999/xhtml">
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#prefixes"/>
+ <link rel="match" href="reference/ref-lime-1-generic.xml"/>
+ <title>CSS Namespaces Test Suite: empty string prefix (Implied element namespace)</title>
+ <style>
+ @namespace foo "";
+ t { background:red }
+ foo|t { background:lime }
+ </style>
+ </head>
+ <t>This sentence should have a green background.</t>
+</root>
diff --git a/testing/web-platform/tests/css/css-namespaces/prefix-004.xml b/testing/web-platform/tests/css/css-namespaces/prefix-004.xml
new file mode 100644
index 0000000000..596d4637f9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/prefix-004.xml
@@ -0,0 +1,18 @@
+<root>
+ <head xmlns="http://www.w3.org/1999/xhtml">
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#prefixes"/>
+ <link rel="match" href="reference/ref-lime-2-generic.xml"/>
+ <title>CSS Namespaces Test Suite: empty string default namespace</title>
+ <style>
+ @namespace "";
+ @namespace x "test";
+ *|t, *|root { display:block }
+ *|t, t[x] { background:lime }
+ t { background:red }
+ </style>
+ </head>
+ <t x="">This sentence should have a green background.</t>
+ <t xmlns="test">This sentence should have a green background.</t>
+</root>
diff --git a/testing/web-platform/tests/css/css-namespaces/prefix-005.xml b/testing/web-platform/tests/css/css-namespaces/prefix-005.xml
new file mode 100644
index 0000000000..5f7c3cad3d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/prefix-005.xml
@@ -0,0 +1,18 @@
+<root>
+ <head xmlns="http://www.w3.org/1999/xhtml">
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="author" title="Boris Zbarsky" href="https://bugzilla.mozilla.org/show_bug.cgi?id=458381#c4"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#prefixes"/>
+ <link rel="match" href="reference/ref-lime-2-generic.xml"/>
+ <title>CSS Namespaces Test Suite: no default namespace</title>
+ <style>
+ @namespace x "test";
+ root *|* { background:red; display:block }
+ head { display:none }
+ t { background: lime }
+ </style>
+ </head>
+ <t>This sentence should have a green background.</t>
+ <t xmlns="test">This sentence should have a green background.</t>
+</root>
diff --git a/testing/web-platform/tests/css/css-namespaces/prefix-006.xml b/testing/web-platform/tests/css/css-namespaces/prefix-006.xml
new file mode 100644
index 0000000000..3cc0ab40f3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/prefix-006.xml
@@ -0,0 +1,23 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#prefixes"/>
+ <link rel="match" href="reference/ref-lime-2.xml"/>
+ <title>CSS Namespaces Test Suite: no prefix</title>
+ <style>
+ @namespace "test";
+ |t { background:lime }
+ t { background:red }
+ </style>
+ <style>
+ @namespace "test";
+ t2 { background:lime }
+ |t2 { background:red }
+ </style>
+ </head>
+ <body>
+ <p><t xmlns="">This sentence should have a green background.</t></p>
+ <p><t2 xmlns="test">This sentence should have a green background.</t2></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-block.xml b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-block.xml
new file mode 100644
index 0000000000..c26b6fcf2c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-block.xml
@@ -0,0 +1,10 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/"/>
+ <link rel="author" title="Mozilla" href="http://mozilla.org/"/>
+ <title>CSS Namespaces Test Suite reference</title>
+ </head>
+ <body>
+ <p style="background: lime">This sentence should have a green background.</p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-generic.xml b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-generic.xml
new file mode 100644
index 0000000000..12c5c012d0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-generic.xml
@@ -0,0 +1,11 @@
+<root>
+ <head xmlns="http://www.w3.org/1999/xhtml">
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/"/>
+ <link rel="author" title="Mozilla" href="http://mozilla.org/"/>
+ <title>CSS Namespaces Test Suite reference</title>
+ <style>
+ t { background:lime }
+ </style>
+ </head>
+ <t>This sentence should have a green background.</t>
+</root>
diff --git a/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1.xml b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1.xml
new file mode 100644
index 0000000000..9509a4bd34
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1.xml
@@ -0,0 +1,10 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/"/>
+ <link rel="author" title="Mozilla" href="http://mozilla.org/"/>
+ <title>CSS Namespaces Test Suite reference</title>
+ </head>
+ <body>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2-generic.xml b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2-generic.xml
new file mode 100644
index 0000000000..047be42212
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2-generic.xml
@@ -0,0 +1,13 @@
+<root>
+ <head xmlns="http://www.w3.org/1999/xhtml">
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/"/>
+ <link rel="author" title="Mozilla" href="http://mozilla.org/"/>
+ <title>CSS Namespaces Test Suite reference</title>
+ <style>
+ t, root { display:block }
+ t { background:lime }
+ </style>
+ </head>
+ <t>This sentence should have a green background.</t>
+ <t>This sentence should have a green background.</t>
+</root>
diff --git a/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2.xml b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2.xml
new file mode 100644
index 0000000000..f2fa08395f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2.xml
@@ -0,0 +1,11 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/"/>
+ <link rel="author" title="Mozilla" href="http://mozilla.org/"/>
+ <title>CSS Namespaces Test Suite reference</title>
+ </head>
+ <body>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-3.xml b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-3.xml
new file mode 100644
index 0000000000..e50faba6b5
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-3.xml
@@ -0,0 +1,12 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/"/>
+ <link rel="author" title="Mozilla" href="http://mozilla.org/"/>
+ <title>CSS Namespaces Test Suite reference</title>
+ </head>
+ <body>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-5.xml b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-5.xml
new file mode 100644
index 0000000000..9c45f9de7c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-5.xml
@@ -0,0 +1,14 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/"/>
+ <link rel="author" title="Mozilla" href="http://mozilla.org/"/>
+ <title>CSS Namespaces Test Suite reference</title>
+ </head>
+ <body>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-6.xml b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-6.xml
new file mode 100644
index 0000000000..d67da1ac39
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/reference/ref-lime-6.xml
@@ -0,0 +1,15 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/"/>
+ <link rel="author" title="Mozilla" href="http://mozilla.org/"/>
+ <title>CSS Namespaces Test Suite reference</title>
+ </head>
+ <body>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ <p><test style="background: lime">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/scope-001.xml b/testing/web-platform/tests/css/css-namespaces/scope-001.xml
new file mode 100644
index 0000000000..5271096a96
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/scope-001.xml
@@ -0,0 +1,20 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#scope"/>
+ <link rel="match" href="reference/ref-lime-1.xml"/>
+ <meta name="flags" content="invalid"/>
+ <title>CSS Namespaces Test Suite: scope &lt;style></title>
+ <style>
+ @namespace x url("test");
+ test { background:lime }
+ </style>
+ <style>
+ x|test { background:red }
+ </style>
+ </head>
+ <body>
+ <p><test xmlns="test">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/scope-002.xml b/testing/web-platform/tests/css/css-namespaces/scope-002.xml
new file mode 100644
index 0000000000..ff5a2fec11
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/scope-002.xml
@@ -0,0 +1,21 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#scope"/>
+ <link rel="match" href="reference/ref-lime-1.xml"/>
+ <title>CSS Namespaces Test Suite: scope @import</title>
+ <style>
+ test { background:lime }
+ </style>
+ <style>
+ @import url("support/scope-002a.css");
+ @import url("support/scope-002b.css");
+ @namespace w "test";
+ x|test { background:red }
+ </style>
+ </head>
+ <body>
+ <p><test xmlns="test">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/support/LOCK b/testing/web-platform/tests/css/css-namespaces/support/LOCK
new file mode 100644
index 0000000000..7eabbb24b0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/support/LOCK
@@ -0,0 +1 @@
+Prevent support files from being propagated into this directory.
diff --git a/testing/web-platform/tests/css/css-namespaces/support/fail.css b/testing/web-platform/tests/css/css-namespaces/support/fail.css
new file mode 100644
index 0000000000..1c2d64c7e7
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/support/fail.css
@@ -0,0 +1 @@
+* { background:red ! important }
diff --git a/testing/web-platform/tests/css/css-namespaces/support/scope-002a.css b/testing/web-platform/tests/css/css-namespaces/support/scope-002a.css
new file mode 100644
index 0000000000..a8d20ba812
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/support/scope-002a.css
@@ -0,0 +1,3 @@
+@namespace x url("test");
+@namespace y url("test");
+w|test { background:red }
diff --git a/testing/web-platform/tests/css/css-namespaces/support/scope-002b.css b/testing/web-platform/tests/css/css-namespaces/support/scope-002b.css
new file mode 100644
index 0000000000..0c0d032a0e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/support/scope-002b.css
@@ -0,0 +1,2 @@
+y|test { background: red }
+
diff --git a/testing/web-platform/tests/css/css-namespaces/support/syntax-007.css b/testing/web-platform/tests/css/css-namespaces/support/syntax-007.css
new file mode 100644
index 0000000000..65d1fa73a0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/support/syntax-007.css
@@ -0,0 +1,5 @@
+@charset "UTF-8";
+@namespace url("test");
+@namespace url("test2");
+*|test { background:lime }
+test { background:red }
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-001.xml b/testing/web-platform/tests/css/css-namespaces/syntax-001.xml
new file mode 100644
index 0000000000..83efb665b6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-001.xml
@@ -0,0 +1,16 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-1-block.xml"/>
+ <title>CSS Namespaces Test Suite: @namespace case-insensitivity</title>
+ <style>
+ @NAmespace x "http://www.w3.org/1999/xhtml";
+ x|p { background: lime }
+ </style>
+ </head>
+ <body>
+ <p>This sentence should have a green background.</p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-002.xml b/testing/web-platform/tests/css/css-namespaces/syntax-002.xml
new file mode 100644
index 0000000000..30fa8aece3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-002.xml
@@ -0,0 +1,16 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-1-block.xml"/>
+ <title>CSS Namespaces Test Suite: @namespace syntax with escapes</title>
+ <style>
+ @\N\000041 mes\pac\65 x "http://www.w3.org/1999/xhtml";
+ x|p { background: lime }
+ </style>
+ </head>
+ <body>
+ <p>This sentence should have a green background.</p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-003.xml b/testing/web-platform/tests/css/css-namespaces/syntax-003.xml
new file mode 100644
index 0000000000..1b2eb5f9c0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-003.xml
@@ -0,0 +1,39 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-5.xml"/>
+ <title>CSS Namespaces Test Suite: @namespace default namespace syntax</title>
+ <style>
+ *|test { background:red }
+ </style>
+ <style>
+ @namespace url(test-a);
+ test { background:lime }
+ </style>
+ <style>
+ @namespace url('test-b');
+ test { background:lime }
+ </style>
+ <style>
+ @namespace url("test-c");
+ test { background:lime }
+ </style>
+ <style>
+ @namespace 'test-d';
+ test { background:lime }
+ </style>
+ <style>
+ @namespace "test-e";
+ test { background:lime }
+ </style>
+ </head>
+ <body>
+ <p><test xmlns="test-a">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-b">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-c">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-d">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-e">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-004.xml b/testing/web-platform/tests/css/css-namespaces/syntax-004.xml
new file mode 100644
index 0000000000..c4ce372b09
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-004.xml
@@ -0,0 +1,17 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-1.xml"/>
+ <title>CSS Namespaces Test Suite: @namespace url() with escape</title>
+ <style>
+ @namespace u\00072l("test");
+ *|test { background:red }
+ test { background: lime }
+ </style>
+ </head>
+ <body>
+ <p><test xmlns="test">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-005.xml b/testing/web-platform/tests/css/css-namespaces/syntax-005.xml
new file mode 100644
index 0000000000..9d6b0abe94
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-005.xml
@@ -0,0 +1,27 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-5.xml"/>
+ <title>CSS Namespaces Test Suite: @namespace string and url() syntax</title>
+ <style>
+ test { background:red }
+ </style>
+ <style>
+ @namespace a url(test-a);
+ @namespace b url('test-b');
+ @namespace c url("test-c");
+ @namespace d 'test-d';
+ @namespace e "test-e";
+ a|test, b|test, c|test, d|test, e|test { background:lime }
+ </style>
+ </head>
+ <body>
+ <p><test xmlns="test-a">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-b">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-c">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-d">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-e">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-006.xml b/testing/web-platform/tests/css/css-namespaces/syntax-006.xml
new file mode 100644
index 0000000000..09ff0d5916
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-006.xml
@@ -0,0 +1,20 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-1.xml"/>
+ <meta name="flags" content="invalid"/>
+ <title>CSS Namespaces Test Suite: invalid ordering of @namespace and @import</title>
+ <style>
+ @namespace x u\00072l("test");
+ @import url("support/fail.css");
+ @namespace url("test2");
+ x|test { background:lime }
+ test { background:red }
+ </style>
+ </head>
+ <body>
+ <p><test xmlns="test">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-007.xml b/testing/web-platform/tests/css/css-namespaces/syntax-007.xml
new file mode 100644
index 0000000000..0c651f17d7
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-007.xml
@@ -0,0 +1,13 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-1.xml"/>
+ <title>CSS Namespaces Test Suite: @namespace and @charset</title>
+ <link rel="stylesheet" href="support/syntax-007.css"/>
+ </head>
+ <body>
+ <p><test xmlns="test">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-008.xml b/testing/web-platform/tests/css/css-namespaces/syntax-008.xml
new file mode 100644
index 0000000000..20284e2247
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-008.xml
@@ -0,0 +1,23 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-2.xml"/>
+ <title>CSS Namespaces Test Suite: escapes in prefix</title>
+ <style>
+ @namespace \72x url("test");
+ t { background:red }
+ r\78|t { background:lime }
+ </style>
+ <style>
+ @namespace \032 url("test"); /* two spaces, see CSS 2.1, 4.1.3 */
+ t2 { background:red }
+ \32|t2 { background:lime }
+ </style>
+ </head>
+ <body>
+ <p><t xmlns="test">This sentence should have a green background.</t></p>
+ <p><t2 xmlns="test">This sentence should have a green background.</t2></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-009.xml b/testing/web-platform/tests/css/css-namespaces/syntax-009.xml
new file mode 100644
index 0000000000..edf2f4c9b4
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-009.xml
@@ -0,0 +1,18 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-1.xml"/>
+ <title>CSS Namespaces Test Suite: escaped vertical bar in qualified name</title>
+ <style>
+ @namespace x "test";
+ test { background:red }
+ x|test { background:lime }
+ x\00007Ctest { background:red }
+ </style>
+ </head>
+ <body>
+ <p><test xmlns="test">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-010.xml b/testing/web-platform/tests/css/css-namespaces/syntax-010.xml
new file mode 100644
index 0000000000..06b280da79
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-010.xml
@@ -0,0 +1,36 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-3.xml"/>
+ <meta name="flags" content="invalid"/>
+ <title>CSS Namespaces Test Suite: duplicate @namespace declarations</title>
+ <style>
+ @namespace "1";
+ @namespace dummy "yummy";
+ @namespace "2";
+ *|t { background:lime }
+ t { background:red }
+ </style>
+ <style>
+ @namespace "1";
+ @namespace dummy "yummy";
+ @namespace "2";
+ *|t2 { background:red }
+ t2 { background:lime }
+ </style>
+ <style>
+ @namespace x "1";
+ @namespace dummy "yummy";
+ @namespace x "2";
+ *|t3 { background:red }
+ x|t3 { background:lime }
+ </style>
+ </head>
+ <body>
+ <p><t xmlns="1">This sentence should have a green background.</t></p>
+ <p><t2 xmlns="2">This sentence should have a green background.</t2></p>
+ <p><t3 xmlns="2">This sentence should have a green background.</t3></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-011.xml b/testing/web-platform/tests/css/css-namespaces/syntax-011.xml
new file mode 100644
index 0000000000..7d137fc7a5
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-011.xml
@@ -0,0 +1,47 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-6.xml"/>
+ <title>CSS Namespaces Test Suite: string comparison (no URI resolving)</title>
+ <style>
+ @namespace url("http://example.com/");
+ *|t { background:lime }
+ t { background:red }
+ </style>
+ <style>
+ @namespace url("http://example.com/");
+ *|t2 { background:lime }
+ t2 { background:red }
+ </style>
+ <style>
+ @namespace url("HTTP://example.com/");
+ *|t3 { background:lime }
+ t3 { background:red }
+ </style>
+ <style>
+ @namespace url("http://example.COM/");
+ *|t4 { background:lime }
+ t4 { background:red }
+ </style>
+ <style>
+ @namespace url("%41");
+ *|t5 { background:lime }
+ t5 { background:red }
+ </style>
+ <style>
+ @namespace url("A");
+ *|t6 { background:lime }
+ t6 { background:red }
+ </style>
+ </head>
+ <body>
+ <p><t xmlns="HTTP://example.com/">This sentence should have a green background.</t></p>
+ <p><t2 xmlns="http://example.COM/">This sentence should have a green background.</t2></p>
+ <p><t3 xmlns="http://example.com/">This sentence should have a green background.</t3></p>
+ <p><t4 xmlns="http://example.com/">This sentence should have a green background.</t4></p>
+ <p><t5 xmlns="A">This sentence should have a green background.</t5></p>
+ <p><t6 xmlns="%41">This sentence should have a green background.</t6></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-012.xml b/testing/web-platform/tests/css/css-namespaces/syntax-012.xml
new file mode 100644
index 0000000000..43f211b4dd
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-012.xml
@@ -0,0 +1,31 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-3.xml"/>
+ <title>CSS Namespaces Test Suite: whitespace and comment handling</title>
+ <style>
+ test { background:red }
+ </style>
+ <style>
+ @namespace/* test */
+ a
+ url(
+test-a );
+
+ @namespace/**/b/**/url( 'test-b'
+);
+
+ @namespace c url("test-c"
+);
+
+ a|test, b|test, c|test { background:lime }
+ </style>
+ </head>
+ <body>
+ <p><test xmlns="test-a">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-b">This sentence should have a green background.</test></p>
+ <p><test xmlns="test-c">This sentence should have a green background.</test></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-013.xml b/testing/web-platform/tests/css/css-namespaces/syntax-013.xml
new file mode 100644
index 0000000000..a7c63e43e0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-013.xml
@@ -0,0 +1,44 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-5.xml"/>
+ <meta name="flags" content="invalid"/>
+ <title>CSS Namespaces Test Suite: @namespace error handling</title>
+ <style>
+ t, t2, t3, t4, t5 { background:red }
+ </style>
+ <style>
+ @namespace "test" {}
+ t { background:lime }
+ </style>
+ <style id="a">@namespace x "test</style>
+ <script>
+ document.getElementById("a").sheet.insertRule("x|t2 {background:lime }", 1)
+ </script>
+ <style>
+ @namespace "fail;
+ ; t3 { background:lime }
+ </style>
+ <style>
+ @namespace url('fail);
+ t4 { background:red !important; }
+ );
+ t4 { background:lime }
+ </style>
+ <style>
+ @namespace url(test);
+ @namespace url('test' x);
+ t5 { background:lime }
+ </style>
+ </head>
+ <body>
+ <p><t>This sentence should have a green background.</t></p>
+ <p><t2 xmlns="test">This sentence should have a green background.</t2></p>
+ <p><t3>This sentence should have a green background.</t3></p>
+ <p><t4>This sentence should have a green background.</t4></p>
+ <p><t5 xmlns="test">This sentence should have a green background.</t5></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-014.xml b/testing/web-platform/tests/css/css-namespaces/syntax-014.xml
new file mode 100644
index 0000000000..1bdfc265ef
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-014.xml
@@ -0,0 +1,31 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-3.xml"/>
+ <meta name="flags" content="invalid"/>
+ <title>CSS Namespaces Test Suite: @namespace and invalid at-rules</title>
+ <style>
+ t, t2, t3 { background:red }
+ </style>
+ <style>
+ @import x {}
+ @namespace x "test";
+ x|t { background:lime }
+ </style>
+ <style>
+ @namespace x "test-top";
+ @foobar this is funny { not:sure }
+ @namespace "test";
+ @foobar this is funner;
+ t2 { background:lime }
+ x|t3 { background:lime }
+ </style>
+ </head>
+ <body>
+ <p><t xmlns="test">This sentence should have a green background.</t></p>
+ <p><t2 xmlns="test">This sentence should have a green background.</t2></p>
+ <p><t3 xmlns="test-top">This sentence should have a green background.</t3></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-015.xml b/testing/web-platform/tests/css/css-namespaces/syntax-015.xml
new file mode 100644
index 0000000000..d39eb8b3a4
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-015.xml
@@ -0,0 +1,18 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Anne van Kesteren" href="http://annevankesteren.nl/"/>
+ <link rel="author" title="Opera Software ASA" href="http://opera.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <link rel="match" href="reference/ref-lime-1.xml"/>
+ <title>CSS Namespaces Test Suite: invalid URI</title>
+ <style>
+ @namespace x url("test");
+ @namespace x url("}x&lt; >x{");
+ t { background:lime }
+ x|t { background:red }
+ </style>
+ </head>
+ <body>
+ <p><t xmlns="test">This sentence should have a green background.</t></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-namespaces/syntax-016.xml b/testing/web-platform/tests/css/css-namespaces/syntax-016.xml
new file mode 100644
index 0000000000..1e280d8cba
--- /dev/null
+++ b/testing/web-platform/tests/css/css-namespaces/syntax-016.xml
@@ -0,0 +1,22 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <link rel="author" title="Daniel Glazman" href="http://glazman.org/"/>
+ <link rel="author" title="Disruptive Innovations SAS" href="http://disruptive-innovations.com/"/>
+ <link rel="help" href="http://www.w3.org/TR/css-namespaces-3/#syntax"/>
+ <title>CSS Namespaces Test Suite: @namespace and other rules ordering</title>
+ <style>
+ @namespace test url("test");
+ @media all {
+ test|test { background-color: lime; }
+ }
+ @namespace test2 url("test");
+ test2|test { background: red }
+ </style>
+ </head>
+ <body>
+ <p>
+ <test xmlns="test">This sentence should have a green
+ background.</test>
+ </p>
+ </body>
+</html>