1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/layout/style/test/test_descriptor_syntax_errors.html Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,53 @@ 1.4 +<!DOCTYPE HTML> 1.5 +<html> 1.6 +<!-- 1.7 +--> 1.8 +<head> 1.9 + <title>Test that we reject syntax errors listed in descriptor_database.js</title> 1.10 + <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> 1.11 + <script type="text/javascript" src="descriptor_database.js"></script> 1.12 + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> 1.13 +</head> 1.14 +<body> 1.15 +<p id="display"></p> 1.16 +<div id="content" style="display: none"> 1.17 +</div> 1.18 +<pre id="test"> 1.19 +<script class="testbody" type="text/javascript"> 1.20 + 1.21 +var gStyleElement = document.createElement("style"); 1.22 +gStyleElement.setAttribute("type", "text/css"); 1.23 +document.getElementsByTagName("head")[0].appendChild(gStyleElement); 1.24 +var gSheet = gStyleElement.sheet; 1.25 +gSheet.insertRule("@font-face { }", 0); 1.26 +var gRule = gSheet.cssRules[0]; 1.27 +var gDeclaration = gRule.style; 1.28 + 1.29 +function fake_set_property(descriptor, value) { 1.30 + gSheet.deleteRule(0); 1.31 + gSheet.insertRule("@font-face { " + descriptor + ": " + value + "}", 0); 1.32 + gRule = gSheet.cssRules[0]; 1.33 + gDeclaration = gRule.style; 1.34 +} 1.35 + 1.36 +for (var descriptor in gCSSFontFaceDescriptors) { 1.37 + var info = gCSSFontFaceDescriptors[descriptor]; 1.38 + for (var idx in info.invalid_values) { 1.39 + var badval = info.invalid_values[idx]; 1.40 + 1.41 +// // We don't implement SetProperty yet (bug 443978). 1.42 +// gDeclaration.setProperty(descriptor, badval, ""); 1.43 + fake_set_property(descriptor, badval); 1.44 + 1.45 + is(gDeclaration.getPropertyValue(descriptor), "", 1.46 + "invalid value '" + badval + "' not accepted for '" + descriptor + 1.47 + "' descriptor"); 1.48 + 1.49 + gDeclaration.removeProperty(descriptor); 1.50 + } 1.51 +} 1.52 + 1.53 +</script> 1.54 +</pre> 1.55 +</body> 1.56 +</html>