71 lines
3.3 KiB
HTML
71 lines
3.3 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<title>Test for Bug 24742 - CSS tokenizer allows color in 6 hex digit notation to be followed by the next token without separation</title>
|
|
<style>
|
|
div {
|
|
margin-bottom:11px;
|
|
}
|
|
</style>
|
|
<script>
|
|
if (window.testRunner)
|
|
testRunner.dumpAsText();
|
|
|
|
function test()
|
|
{
|
|
var test_defs = [
|
|
/* description, expected style, test style */
|
|
["Invalid: 0 hexadecimal digits", "", "border-bottom: solid #"],
|
|
["Invalid: 1 hexadecimal digits", "", "border-bottom: solid #1"],
|
|
["Invalid: 2 hexadecimal digits", "", "border-bottom: solid #11"],
|
|
["Valid: 3 hexadecimal digits", "border-bottom: solid rgb(17,17,17)", "border-bottom: solid #111"],
|
|
["Valid: 4 hexadecimal digits", "border-bottom: solid rgba(17,17,17,255)", "border-bottom: solid #111f"],
|
|
["Invalid: 5 hexadecimal digits", "", "border-bottom: solid #11111"],
|
|
["Valid: 6 hexadecimal digits", "border-bottom: solid rgb(17,17,17)", "border-bottom: solid #111111"],
|
|
["Invalid: 7 hexadecimal digits", "", "border-bottom: solid #1111111"],
|
|
["Valid: 8 hexadecimal digits", "border-bottom: solid rgba(17,17,17,255)", "border-bottom: solid #111111ff"],
|
|
["Invalid: 0 hexadecimal digits concatenated with 'px'", "", "border-bottom: solid #px"],
|
|
["Invalid: 1 hexadecimal digits concatenated with 'px'", "", "border-bottom: solid #1px"],
|
|
["Invalid: 2 hexadecimal digits concatenated with 'px'", "", "border-bottom: solid #11px"],
|
|
["Invalid: 3 hexadecimal digits concatenated with 'px'", "", "border-bottom: solid #111px"],
|
|
["Invalid: 4 hexadecimal digits concatenated with 'px'", "", "border-bottom: solid #1111px"],
|
|
["Invalid: 5 hexadecimal digits concatenated with 'px'", "", "border-bottom: solid #11111px"],
|
|
["Invalid: 6 hexadecimal digits concatenated with 'px'", "", "border-bottom: solid #111111px"],
|
|
["Invalid: 7 hexadecimal digits concatenated with 'px'", "", "border-bottom: solid #1111111px"],
|
|
["Invalid: 8 hexadecimal digits concatenated with 'px'", "", "border-bottom: solid #11111111px"],
|
|
];
|
|
|
|
var testHtml = "";
|
|
for (var i = 0; i < test_defs.length; i++) {
|
|
var test_def = test_defs[i];
|
|
testHtml += "<div>Test " + i + " (" + test_def[0] + ")" +
|
|
"<span id='expected_" + i + "' style='" + test_def[1] + "'> [EXPECTED] </span>" +
|
|
"<span id='actual_" + i + "' style='" + test_def[2] + "'> [ACTUAL] </span>" +
|
|
"<span id='result_" + i + "'></span></div>";
|
|
}
|
|
document.getElementById('tests').innerHTML = testHtml;
|
|
|
|
for (var i = 0; i < test_defs.length; i++) {
|
|
var expected = document.getElementById("expected_" + i).style.borderBottomColor;
|
|
var actual = document.getElementById("actual_" + i).style.borderBottomColor;
|
|
var message;
|
|
var color;
|
|
if (actual == expected) {
|
|
message = "PASS";
|
|
color = "green";
|
|
} else {
|
|
message = "FAIL: expected:'" + expected + "' actual:'" + actual + "'";
|
|
color = "red";
|
|
}
|
|
var result = document.getElementById("result_" + i);
|
|
result.innerHTML = message;
|
|
result.style.color = color;
|
|
}
|
|
}
|
|
</script>
|
|
</head>
|
|
<body onload="test()">
|
|
<div id='tests'>Test didn't run</div>
|
|
</html>
|
|
|