Index: lib/src/prism/tests/languages/markup/tag_attribute_feature.test |
diff --git a/lib/src/prism/tests/languages/markup/tag_attribute_feature.test b/lib/src/prism/tests/languages/markup/tag_attribute_feature.test |
new file mode 100644 |
index 0000000000000000000000000000000000000000..986cca8251f4731e5a163b87ca9e12942940371c |
--- /dev/null |
+++ b/lib/src/prism/tests/languages/markup/tag_attribute_feature.test |
@@ -0,0 +1,92 @@ |
+<div class="test" foo bar=baz> |
+<div foo='bar'> |
+<div class="foo |
+bar |
+baz"> |
+<div foo:bar=42> |
+ |
+---------------------------------------------------- |
+ |
+[ |
+ ["tag", [ |
+ ["tag", [ |
+ ["punctuation", "<"], |
+ "div" |
+ ]], |
+ ["attr-name", [ |
+ "class" |
+ ]], |
+ ["attr-value", [ |
+ ["punctuation", "="], |
+ ["punctuation", "\""], |
+ "test", |
+ ["punctuation", "\""] |
+ ]], |
+ ["attr-name", [ |
+ "foo" |
+ ]], |
+ ["attr-name", [ |
+ "bar" |
+ ]], |
+ ["attr-value", [ |
+ ["punctuation", "="], |
+ "baz" |
+ ]], |
+ ["punctuation", ">"] |
+ ]], |
+ |
+ ["tag", [ |
+ ["tag", [ |
+ ["punctuation", "<"], |
+ "div" |
+ ]], |
+ ["attr-name", [ |
+ "foo" |
+ ]], |
+ ["attr-value", [ |
+ ["punctuation", "="], |
+ ["punctuation", "'"], |
+ "bar", |
+ ["punctuation", "'"] |
+ ]], |
+ ["punctuation", ">"] |
+ ]], |
+ |
+ ["tag", [ |
+ ["tag", [ |
+ ["punctuation", "<"], |
+ "div" |
+ ]], |
+ ["attr-name", [ |
+ "class" |
+ ]], |
+ ["attr-value", [ |
+ ["punctuation", "="], |
+ ["punctuation", "\""], |
+ "foo\r\nbar\r\nbaz", |
+ ["punctuation", "\""] |
+ ]], |
+ ["punctuation", ">"] |
+ ]], |
+ |
+ ["tag", [ |
+ ["tag", [ |
+ ["punctuation", "<"], |
+ "div" |
+ ]], |
+ ["attr-name", [ |
+ ["namespace", "foo:"], |
+ "bar" |
+ ]], |
+ ["attr-value", [ |
+ ["punctuation", "="], |
+ "42" |
+ ]], |
+ ["punctuation", ">"] |
+ ]] |
+] |
+ |
+---------------------------------------------------- |
+ |
+Checks for single-quoted, double-quoted and unquoted attributes, attributes without value and |
+namespaced attributes. |