Auto merge of #7683 - frewsxcv:html-font-element-size-attr, r=nox

Implement `size` attribute for <font> element



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7683)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2015-10-05 02:33:02 -06:00
commit 7debfd1f4c
12 changed files with 220 additions and 181 deletions

View file

@ -8640,12 +8640,6 @@
[HTMLFontElement interface: existence and properties of interface object]
expected: FAIL
[HTMLFontElement interface: attribute size]
expected: FAIL
[HTMLFontElement interface: document.createElement("font") must inherit property "size" with the proper type (2)]
expected: FAIL
[Window interface: window must inherit property "close" with the proper type (13)]
expected: FAIL

View file

@ -8523,135 +8523,6 @@
[font.tabIndex: IDL set to -2147483648 followed by getAttribute()]
expected: FAIL
[font.size: typeof IDL attribute]
expected: FAIL
[font.size: IDL get with DOM attribute unset]
expected: FAIL
[font.size: setAttribute() to "" followed by IDL get]
expected: FAIL
[font.size: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo " followed by IDL get]
expected: FAIL
[font.size: setAttribute() to undefined followed by IDL get]
expected: FAIL
[font.size: setAttribute() to 7 followed by IDL get]
expected: FAIL
[font.size: setAttribute() to 1.5 followed by IDL get]
expected: FAIL
[font.size: setAttribute() to true followed by IDL get]
expected: FAIL
[font.size: setAttribute() to false followed by IDL get]
expected: FAIL
[font.size: setAttribute() to object "[object Object\]" followed by IDL get]
expected: FAIL
[font.size: setAttribute() to NaN followed by IDL get]
expected: FAIL
[font.size: setAttribute() to Infinity followed by IDL get]
expected: FAIL
[font.size: setAttribute() to -Infinity followed by IDL get]
expected: FAIL
[font.size: setAttribute() to "\\0" followed by IDL get]
expected: FAIL
[font.size: setAttribute() to null followed by IDL get]
expected: FAIL
[font.size: setAttribute() to object "test-toString" followed by IDL get]
expected: FAIL
[font.size: setAttribute() to object "test-valueOf" followed by IDL get]
expected: FAIL
[font.size: IDL set to "" followed by getAttribute()]
expected: FAIL
[font.size: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo " followed by getAttribute()]
expected: FAIL
[font.size: IDL set to undefined followed by getAttribute()]
expected: FAIL
[font.size: IDL set to undefined followed by IDL get]
expected: FAIL
[font.size: IDL set to 7 followed by getAttribute()]
expected: FAIL
[font.size: IDL set to 7 followed by IDL get]
expected: FAIL
[font.size: IDL set to 1.5 followed by getAttribute()]
expected: FAIL
[font.size: IDL set to 1.5 followed by IDL get]
expected: FAIL
[font.size: IDL set to true followed by getAttribute()]
expected: FAIL
[font.size: IDL set to true followed by IDL get]
expected: FAIL
[font.size: IDL set to false followed by getAttribute()]
expected: FAIL
[font.size: IDL set to false followed by IDL get]
expected: FAIL
[font.size: IDL set to object "[object Object\]" followed by getAttribute()]
expected: FAIL
[font.size: IDL set to object "[object Object\]" followed by IDL get]
expected: FAIL
[font.size: IDL set to NaN followed by getAttribute()]
expected: FAIL
[font.size: IDL set to NaN followed by IDL get]
expected: FAIL
[font.size: IDL set to Infinity followed by getAttribute()]
expected: FAIL
[font.size: IDL set to Infinity followed by IDL get]
expected: FAIL
[font.size: IDL set to -Infinity followed by getAttribute()]
expected: FAIL
[font.size: IDL set to -Infinity followed by IDL get]
expected: FAIL
[font.size: IDL set to "\\0" followed by getAttribute()]
expected: FAIL
[font.size: IDL set to null followed by getAttribute()]
expected: FAIL
[font.size: IDL set to null followed by IDL get]
expected: FAIL
[font.size: IDL set to object "test-toString" followed by getAttribute()]
expected: FAIL
[font.size: IDL set to object "test-toString" followed by IDL get]
expected: FAIL
[font.size: IDL set to object "test-valueOf" followed by IDL get]
expected: FAIL
[font.itemScope: typeof IDL attribute]
expected: FAIL

View file

@ -647,6 +647,12 @@
"url": "/_mozilla/mozilla/htmlfieldsetelement_elements.html"
}
],
"mozilla/htmlfontelement_size_attribute.html": [
{
"path": "mozilla/htmlfontelement_size_attribute.html",
"url": "/_mozilla/mozilla/htmlfontelement_size_attribute.html"
}
],
"mozilla/htmlspacechars.html": [
{
"path": "mozilla/htmlspacechars.html",

View file

@ -0,0 +1,34 @@
<!DOCTYPE html>
<meta charset=utf-8>
<title>'font' element, 'size' attribute</title>
<link rel=help href="https://html.spec.whatwg.org/multipage/#dom-font-size">
<link rel=help href="https://html.spec.whatwg.org/multipage/#rules-for-parsing-a-legacy-font-size">
<link rel=help href="https://drafts.csswg.org/css-fonts-3/#font-size-prop">
<link rel=author title="Corey Farwell" href="mailto:coreyf@rwell.org">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<font>Hello</font>
<script>
var elem = document.getElementsByTagName('font')[0];
var modes = ["", "+", "-"];
var sizes = ["0", "1", "2", "3", "4", "5", "6", "7", "8"];
var testSize = function (attrValue) {
elem.setAttribute("size", attrValue);
assert_equals(elem.getAttribute("size"), attrValue);
}
var args = [];
for (var i = 0; i < modes.length; i++) {
for (var j = 0; j < sizes.length; j++) {
var sizeAttrValue = modes[i] + sizes[j];
args.push(["size=" + sizeAttrValue, sizeAttrValue]);
}
}
generate_tests(testSize, args);
</script>