104 lines
3.1 KiB
HTML
104 lines
3.1 KiB
HTML
<head>
|
|
<style>
|
|
#a { content: url(c); }
|
|
#b { content: url( d); }
|
|
#c { content: url(e ); }
|
|
#d { content: url( f ); }
|
|
#f { content: url('c'); }
|
|
#g { content: url(' d'); }
|
|
#h { content: url('e '); }
|
|
#i { content: url(' f '); }
|
|
#j { content: url("url(g)"); }
|
|
#l { content: url("c"); }
|
|
#m { content: url(" d"); }
|
|
#n { content: url("e "); }
|
|
#o { content: url(" f "); }
|
|
#p { content: url("url(g)"); }
|
|
#q { cursor: url("url(q)"), default; }
|
|
#r { list-style-image: url("url(r)"); }
|
|
#s { background-image: url("url(s)"); }
|
|
#t { -webkit-mask-image: url("url(t)"); }
|
|
#u { -webkit-border-image: url("url(u)") 1 2 3 4 fill stretch round; }
|
|
#v { -webkit-mask-box-image: url("url(v)") 1 2 3 4 fill stretch round; }
|
|
#w { content: url("w\0d\
|
|
w"); /* URL string contains twice newline */ }
|
|
#x { content: url(" x x x "); } /* URL string contains space and tab */
|
|
#y { content: url( y\20y\9y ); } /* URL string contains space and tab */
|
|
</style>
|
|
|
|
<script>
|
|
|
|
// Some ideas for additional things to test in the future:
|
|
// 1) Actual control characters in the <style> element.
|
|
// 2) URL with only space characters in it.
|
|
// 3) Different CSS space characters, and spaces that are not allowed in CSS.
|
|
// 4) Different CSS space characters, and spaces that are not allowed in CSS.
|
|
// 5) The src property inside font-face.
|
|
// 6) Quoted values that are themselves inside quotes (two levels of quotes).
|
|
|
|
function runTest()
|
|
{
|
|
if (window.testRunner)
|
|
testRunner.dumpAsText();
|
|
|
|
var rules = document.styleSheets[0].cssRules;
|
|
var text = "";
|
|
for (var i = 0; i < rules.length; i++) {
|
|
text += rules.item(i).cssText;
|
|
text += "\n";
|
|
}
|
|
|
|
document.getElementById("result").appendChild(document.createTextNode(text));
|
|
|
|
if (document.getElementById("result").firstChild.data === document.getElementById("expected").firstChild.data)
|
|
document.getElementById("message").firstChild.data = "SUCCESS";
|
|
else
|
|
document.getElementById("message").firstChild.data = "FAILURE";
|
|
}
|
|
|
|
</script>
|
|
|
|
</head>
|
|
|
|
<body onload="runTest()">
|
|
|
|
<p>Test parsing of CSS URI tokens. Older versions of WebKit did some double processing of these, hence this test would have failed.</p>
|
|
|
|
<p id="message">TEST DID NOT COMPLETE</p>
|
|
|
|
<p>Rules from the stylesheet:</p>
|
|
|
|
<pre id="result"></pre>
|
|
|
|
<p>Expected result:</p>
|
|
|
|
<pre id="expected">#a { content: url("c"); }
|
|
#b { content: url("d"); }
|
|
#c { content: url("e"); }
|
|
#d { content: url("f"); }
|
|
#f { content: url("c"); }
|
|
#g { content: url(" d"); }
|
|
#h { content: url("e "); }
|
|
#i { content: url(" f "); }
|
|
#j { content: url("url(g)"); }
|
|
#l { content: url("c"); }
|
|
#m { content: url(" d"); }
|
|
#n { content: url("e "); }
|
|
#o { content: url(" f "); }
|
|
#p { content: url("url(g)"); }
|
|
#q { cursor: url("url(q)"), default; }
|
|
#r { list-style-image: url("url(r)"); }
|
|
#s { background-image: url("url(s)"); }
|
|
#t { -webkit-mask-image: url("url(t)"); }
|
|
#u { -webkit-border-image: url("url(u)") 1 2 3 4 fill stretch round; }
|
|
#v { -webkit-mask-box-image: url("url(v)") 1 2 3 4 fill stretch round; }
|
|
#w { content: url("w\d w"); }
|
|
#x { content: url(" x x\9 x "); }
|
|
#y { content: url("y y\9 y"); }
|
|
</pre>
|
|
|
|
<script>
|
|
|
|
</script>
|
|
</body>
|