| <!doctype html> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> |
| <title>Bug 34529 - [CSSOM] issues with cssText and selectorText</title> |
| <style type="text/css"> |
| /* Control characters */ |
| .\01_class { |
| color:green; |
| } |
| .\1f_class { |
| color:green; |
| } |
| .\30_class { |
| color:green; |
| } |
| .\39_class { |
| color:green; |
| } |
| /* Characters following '-' */ |
| .-\30_class { |
| color:green; |
| } |
| .-\39_class { |
| color:green; |
| } |
| .-\2d_class { |
| color:green; |
| } |
| /* non-ASCII characters */ |
| .\81_class { |
| color:green; |
| } |
| /* unicode characters */ |
| .日本語_class { |
| color:green; |
| } |
| /* unicode supplementary characters (surrogate pairs) */ |
| .𐐀_class { |
| color:green; |
| } |
| /* plain characters */ |
| .azAZ09_-_class { |
| color:green; |
| } |
| .\(\/\:\@\[\~_class { |
| color:green; |
| } |
| /* ID */ |
| #a\.external\:visited { |
| color:green; |
| } |
| /* String */ |
| li[myattr="my\"value\\"] { |
| color:green; |
| } |
| |
| li { |
| color:red; |
| } |
| </style> |
| <script src="../../resources/js-test-pre.js"></script> |
| </head> |
| <body> |
| <p id="description"></p> |
| |
| List items must be green. Otherwise some selectors are invalid. |
| <ul> |
| <li class="_class">class="&#001;_class"</li> |
| <li class="_class">class="&#031;_class"</li> |
| <li class="0_class">class="0_class"</li> |
| <li class="9_class">class="9_class"</li> |
| <li class="-0_class">class="-0_class"</li> |
| <li class="-9_class">class="-9_class"</li> |
| <li class="--_class">class="--_class"</li> |
| <li class="_class">class="&#129;_class"</li> |
| <li class="日本語_class">class="日本語_class"</li> |
| <li class="𐐀_class">class="𐐀_class"</li> |
| <li class="azAZ09_-_class">class="azAZ09_-_class"</li> |
| <li class="(/:@[~_class">class="(/:@[~_class"</li> |
| <li id="a.external:visited">id="a.external:visited"</li> |
| <li myattr="my"value\">myattr="my"value\"</li> |
| </ul> |
| |
| <div id="console"></div> |
| <script type="text/javascript"> |
| description("Test for Bug 34529 - [CSSOM] issues with cssText and selectorText"); |
| |
| var expectedTexts = [ |
| ".\\1 _class", |
| ".\\1f _class", |
| ".\\30 _class", |
| ".\\39 _class", |
| ".-\\30 _class", |
| ".-\\39 _class", |
| ".--_class", |
| ".\x81_class", |
| ".日本語_class", |
| ".𐐀_class", |
| ".azAZ09_-_class", |
| ".\\(\\/\\:\\@\\[\\~_class", |
| "#a\\.external\\:visited", |
| 'li[myattr="my\\"value\\\\"]' |
| ]; |
| |
| var rules = document.styleSheets[0].cssRules; |
| for (var i = 0; i < expectedTexts.length; i++) { |
| shouldBe("rules[" + i + "].selectorText", "expectedTexts[" + i + "]"); |
| shouldBe("rules[" + i + "].cssText", "expectedTexts[" + i + "] + ' { color: green; }'"); |
| } |
| </script> |
| <script src="../../resources/js-test-post.js"></script> |
| </body> |
| </html> |