mirror of
https://github.com/servo/servo.git
synced 2025-08-23 14:25:33 +01:00
Auto merge of #19038 - CJ8664:master, r=jdm
Added implementation for itemprop and itemtype along with test files <!-- Please describe your changes on the following line: --> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors <!-- Either: --> - [x] There are tests for these changes OR <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/19038) <!-- Reviewable:end -->
This commit is contained in:
commit
5227df260c
11 changed files with 345 additions and 0 deletions
|
@ -33350,6 +33350,36 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"mozilla/microdata/dup_prop_type_test.html": [
|
||||
[
|
||||
"/_mozilla/mozilla/microdata/dup_prop_type_test.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"mozilla/microdata/extra_space_test.html": [
|
||||
[
|
||||
"/_mozilla/mozilla/microdata/extra_space_test.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"mozilla/microdata/none_check.html": [
|
||||
[
|
||||
"/_mozilla/mozilla/microdata/none_check.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"mozilla/microdata/regular_prop_type_test.html": [
|
||||
[
|
||||
"/_mozilla/mozilla/microdata/regular_prop_type_test.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"mozilla/microdata/single_prop_type_test.html": [
|
||||
[
|
||||
"/_mozilla/mozilla/microdata/single_prop_type_test.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"mozilla/mime_sniffing_font_context.html": [
|
||||
[
|
||||
"/_mozilla/mozilla/mime_sniffing_font_context.html",
|
||||
|
@ -66385,6 +66415,26 @@
|
|||
"4e0b6d4c416e2e3f26de64e9364f0a8c7a6dc5cb",
|
||||
"testharness"
|
||||
],
|
||||
"mozilla/microdata/dup_prop_type_test.html": [
|
||||
"4837cf896419aba6d1df6e89c5849a786d4e4be0",
|
||||
"testharness"
|
||||
],
|
||||
"mozilla/microdata/extra_space_test.html": [
|
||||
"0a941e2eb10013ab55049d4d6007d8301149f651",
|
||||
"testharness"
|
||||
],
|
||||
"mozilla/microdata/none_check.html": [
|
||||
"5addb47e08bdb4ad8293f22dffe95e4760336e08",
|
||||
"testharness"
|
||||
],
|
||||
"mozilla/microdata/regular_prop_type_test.html": [
|
||||
"8e67711c47afe50edaa9b6baaa1349862e639e2e",
|
||||
"testharness"
|
||||
],
|
||||
"mozilla/microdata/single_prop_type_test.html": [
|
||||
"0d81eecf7e52feb0964e879ffe9450881141caa5",
|
||||
"testharness"
|
||||
],
|
||||
"mozilla/mime_sniffing_font_context.html": [
|
||||
"1311e72e0a0dafa6fae594ca1ce2deca164acd36",
|
||||
"testharness"
|
||||
|
|
1
tests/wpt/mozilla/meta/mozilla/microdata/__dir__.ini
Normal file
1
tests/wpt/mozilla/meta/mozilla/microdata/__dir__.ini
Normal file
|
@ -0,0 +1 @@
|
|||
prefs: ["dom.microdata.testing.enabled:true"]
|
|
@ -0,0 +1,48 @@
|
|||
<!doctype html>
|
||||
<meta charset="utf-8">
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<title>Duplicate ItemProperty and ItemType test</title>
|
||||
</head>
|
||||
|
||||
<body id="body" itemprop="hello world world" itemtype="hello world world">
|
||||
|
||||
<h1 id="h1" itemprop="hello world world" itemtype="hello world world">Header H1</h1>
|
||||
<h2 id="h2" itemprop="hello world world" itemtype="hello world world">Header H2</h2>
|
||||
|
||||
<p id="p" itemprop="hello world world" itemtype="hello world world">Paragraph</p>
|
||||
|
||||
<form id="form" itemprop="hello world world" itemtype="hello world world">
|
||||
<input id="input" itemprop="hello world world" itemtype="hello world world">Input Field in form</input>
|
||||
</form>
|
||||
|
||||
<ul id="ul" itemprop="hello world world" itemtype="hello world world">
|
||||
<li id="li" itemprop="hello world world" itemtype="hello world world">Unordered List Item</li>
|
||||
</ul>
|
||||
|
||||
<meta id="meta" itemprop="hello world world" itemtype="hello world world">Meta Tag</meta>
|
||||
|
||||
<table id="table" itemprop="hello world world" itemtype="hello world world">Table</table>
|
||||
|
||||
<div id="div" itemprop="hello world world" itemtype="hello world world">Hi</div>
|
||||
|
||||
<a id="anchor" itemprop="hello world world" itemtype="hello world world"></a>
|
||||
|
||||
</body>
|
||||
|
||||
<script>
|
||||
test(function() {
|
||||
// Test all elements
|
||||
var ids = ["body", "h1", "h2", "p", "input", "form", "li", "ul", "meta", "table", "div", "anchor"];
|
||||
for (let id of ids) {
|
||||
var elem = document.getElementById(id);
|
||||
assert_array_equals(elem.propertyNames().sort(), ["hello", "world"].sort(), "The method should return 'hello world' ");
|
||||
assert_array_equals(elem.itemtypes().sort(), ["hello", "world"].sort(), "The method should return 'hello world' ");
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</html>
|
|
@ -0,0 +1,49 @@
|
|||
<!doctype html>
|
||||
<meta charset="utf-8">
|
||||
<html>
|
||||
<head>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<title>Extra Space ItemProperty and ItemType test</title>
|
||||
</head>
|
||||
|
||||
<body id="body" itemprop=" hello world " itemtype=" hello world ">
|
||||
|
||||
<h1 id="h1" itemprop=" hello world " itemtype=" hello world ">Header H1</h1>
|
||||
<h2 id="h2" itemprop=" hello world " itemtype=" hello world ">Header H2</h2>
|
||||
|
||||
<p id="p" itemprop=" hello world " itemtype=" hello world ">Paragraph</p>
|
||||
|
||||
<form id="form" itemprop=" hello world " itemtype=" hello world ">
|
||||
<input id="input" itemprop=" hello world " itemtype=" hello world ">Input Field in form</input>
|
||||
</form>
|
||||
|
||||
<ul id="ul" itemprop=" hello world " itemtype=" hello world ">
|
||||
<li id="li" itemprop=" hello world " itemtype=" hello world ">Unordered List Item</li>
|
||||
</ul>
|
||||
|
||||
<meta id="meta" itemprop=" hello world " itemtype=" hello world ">Meta Tag</meta>
|
||||
|
||||
<table id="table" itemprop=" hello world " itemtype=" hello world ">Table</table>
|
||||
|
||||
<div id="div" itemprop=" hello world " itemtype=" hello world ">Hi</div>
|
||||
|
||||
<a id="anchor" itemprop=" hello world " itemtype=" hello world "></a>
|
||||
|
||||
</body>
|
||||
|
||||
<script>
|
||||
test(function() {
|
||||
// Test all elements
|
||||
var ids = ["body", "h1", "h2", "p", "input", "form", "li", "ul", "meta", "table", "div", "anchor"];
|
||||
for (let id of ids) {
|
||||
var elem = document.getElementById(id);
|
||||
assert_array_equals(elem.propertyNames().sort(), ["hello", "world"].sort(), "The method should return 'hello world' ");
|
||||
assert_array_equals(elem.itemtypes().sort(), ["hello", "world"].sort(), "The method should return 'hello world' ");
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
</html>
|
48
tests/wpt/mozilla/tests/mozilla/microdata/none_check.html
Normal file
48
tests/wpt/mozilla/tests/mozilla/microdata/none_check.html
Normal file
|
@ -0,0 +1,48 @@
|
|||
<!doctype html>
|
||||
<meta charset="utf-8">
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<title>None check test</title>
|
||||
</head>
|
||||
|
||||
<body id="body">
|
||||
|
||||
<h1 id="h1">Header H1</h1>
|
||||
<h2 id="h2">Header H2</h2>
|
||||
|
||||
<p id="p">Paragraph</p>
|
||||
|
||||
<form id="form">
|
||||
<input id="input">Input Field in form</input>
|
||||
</form>
|
||||
|
||||
<ul id="ul">
|
||||
<li id="li">Unordered List Item</li>
|
||||
</ul>
|
||||
|
||||
<meta id="meta">Meta Tag</meta>
|
||||
|
||||
<table id="table">Table</table>
|
||||
|
||||
<div id="div">Hi</div>
|
||||
|
||||
<a id="anchor"></a>
|
||||
|
||||
</body>
|
||||
|
||||
<script>
|
||||
test(function() {
|
||||
// Test all elements
|
||||
var ids = ["body", "h1", "h2", "p", "input", "form", "li", "ul", "meta", "table", "div", "anchor"];
|
||||
for (let id of ids) {
|
||||
var elem = document.getElementById(id);
|
||||
assert_equals(elem.propertyNames(), null, "The method should return null ");
|
||||
assert_equals(elem.itemtypes(), null, "The method should return null ");
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</html>
|
|
@ -0,0 +1,48 @@
|
|||
<!doctype html>
|
||||
<meta charset="utf-8">
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<title>Regular ItemProperty and ItemType test</title>
|
||||
</head>
|
||||
|
||||
<body id="body" itemprop="hello world" itemtype="hello world">
|
||||
|
||||
<h1 id="h1" itemprop="hello world" itemtype="hello world">Header H1</h1>
|
||||
<h2 id="h2" itemprop="hello world" itemtype="hello world">Header H2</h2>
|
||||
|
||||
<p id="p" itemprop="hello world" itemtype="hello world">Paragraph</p>
|
||||
|
||||
<form id="form" itemprop="hello world" itemtype="hello world">
|
||||
<input id="input" itemprop="hello world" itemtype="hello world">Input Field in form</input>
|
||||
</form>
|
||||
|
||||
<ul id="ul" itemprop="hello world" itemtype="hello world">
|
||||
<li id="li" itemprop="hello world" itemtype="hello world">Unordered List Item</li>
|
||||
</ul>
|
||||
|
||||
<meta id="meta" itemprop="hello world" itemtype="hello world">Meta Tag</meta>
|
||||
|
||||
<table id="table" itemprop="hello world" itemtype="hello world">Table</table>
|
||||
|
||||
<div id="div" itemprop="hello world" itemtype="hello world">Hi</div>
|
||||
|
||||
<a id="anchor" itemprop="hello world" itemtype="hello world"></a>
|
||||
|
||||
</body>
|
||||
|
||||
<script>
|
||||
test(function() {
|
||||
// Test all elements
|
||||
var ids = ["body", "h1", "h2", "p", "input", "form", "li", "ul", "meta", "table", "div", "anchor"];
|
||||
for (let id of ids) {
|
||||
var elem = document.getElementById(id);
|
||||
assert_array_equals(elem.propertyNames().sort(), ["hello", "world"].sort(), "The method should return 'hello world' ");
|
||||
assert_array_equals(elem.itemtypes().sort(), ["hello", "world"].sort(), "The method should return 'hello world' ");
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</html>
|
|
@ -0,0 +1,48 @@
|
|||
<!doctype html>
|
||||
<meta charset="utf-8">
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<title>Single ItemProperty and ItemType test</title>
|
||||
</head>
|
||||
|
||||
<body id="body" itemprop="Hello" itemtype="Hello">
|
||||
|
||||
<h1 id="h1" itemprop="Hello" itemtype="Hello">Header H1</h1>
|
||||
<h2 id="h2" itemprop="Hello" itemtype="Hello">Header H2</h2>
|
||||
|
||||
<p id="p" itemprop="Hello" itemtype="Hello">Paragraph</p>
|
||||
|
||||
<form id="form" itemprop="Hello" itemtype="Hello">
|
||||
<input id="input" itemprop="Hello" itemtype="Hello">Input Field in form</input>
|
||||
</form>
|
||||
|
||||
<ul id="ul" itemprop="Hello" itemtype="Hello">
|
||||
<li id="li" itemprop="Hello" itemtype="Hello">Unordered List Item</li>
|
||||
</ul>
|
||||
|
||||
<meta id="meta" itemprop="Hello" itemtype="Hello">Meta Tag</meta>
|
||||
|
||||
<table id="table" itemprop="Hello" itemtype="Hello">Table</table>
|
||||
|
||||
<div id="div" itemprop="Hello" itemtype="Hello">Hi</div>
|
||||
|
||||
<a id="anchor" itemprop="Hello" itemtype="Hello"></a>
|
||||
|
||||
</body>
|
||||
|
||||
<script>
|
||||
test(function() {
|
||||
// Test all elements
|
||||
var ids = ["body", "h1", "h2", "p", "input", "form", "li", "ul", "meta", "table", "div", "anchor"];
|
||||
for (let id of ids) {
|
||||
var elem = document.getElementById(id);
|
||||
assert_array_equals(elem.propertyNames(), ["Hello"], "The method should return 'Hello' ");
|
||||
assert_array_equals(elem.itemtypes(), ["Hello"], "The method should return 'Hello' ");
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</html>
|
Loading…
Add table
Add a link
Reference in a new issue