mirror of
https://github.com/servo/servo.git
synced 2025-06-25 01:24:37 +01:00
Auto merge of #13280 - tizianasellitto:issue_13019, r=jdm
Make DOMTokenList Iterable Make DOMTokenList Iterable. - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #13019 - [X] There are tests for these changes (It adds tests/wpt/web-platform-tests/dom/lists/DOMTokenList-Iterable.html) <!-- 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/13280) <!-- Reviewable:end -->
This commit is contained in:
commit
e3d946bb29
3 changed files with 45 additions and 1 deletions
|
@ -25,4 +25,5 @@ interface DOMTokenList {
|
||||||
attribute DOMString value;
|
attribute DOMString value;
|
||||||
|
|
||||||
stringifier;
|
stringifier;
|
||||||
|
iterable<DOMString?>;
|
||||||
};
|
};
|
||||||
|
|
|
@ -37478,7 +37478,16 @@
|
||||||
"local_changes": {
|
"local_changes": {
|
||||||
"deleted": [],
|
"deleted": [],
|
||||||
"deleted_reftests": {},
|
"deleted_reftests": {},
|
||||||
"items": {},
|
"items": {
|
||||||
|
"testharness": {
|
||||||
|
"dom/lists/DOMTokenList-Iterable.html": [
|
||||||
|
{
|
||||||
|
"path": "dom/lists/DOMTokenList-Iterable.html",
|
||||||
|
"url": "/dom/lists/DOMTokenList-Iterable.html"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
"reftest_nodes": {}
|
"reftest_nodes": {}
|
||||||
},
|
},
|
||||||
"reftest_nodes": {
|
"reftest_nodes": {
|
||||||
|
|
|
@ -0,0 +1,34 @@
|
||||||
|
<!doctype html>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>DOMTokenList Iterable Test</title>
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<span class="foo Foo foo "></span>
|
||||||
|
<script>
|
||||||
|
var elementClasses;
|
||||||
|
setup(function() {
|
||||||
|
elementClasses = document.querySelector("span").classList;
|
||||||
|
})
|
||||||
|
test(function() {
|
||||||
|
assert_true('length' in elementClasses);
|
||||||
|
}, 'DOMTokenList has length method.');
|
||||||
|
test(function() {
|
||||||
|
assert_true('values' in elementClasses);
|
||||||
|
}, 'DOMTokenList has values method.');
|
||||||
|
test(function() {
|
||||||
|
assert_true('entries' in elementClasses);
|
||||||
|
}, 'DOMTokenList has entries method.');
|
||||||
|
test(function() {
|
||||||
|
assert_true('forEach' in elementClasses);
|
||||||
|
}, 'DOMTokenList has forEach method.');
|
||||||
|
test(function() {
|
||||||
|
assert_true(Symbol.iterator in elementClasses);
|
||||||
|
}, 'DOMTokenList has Symbol.iterator.');
|
||||||
|
test(function() {
|
||||||
|
var classList = [];
|
||||||
|
for (var className of elementClasses){
|
||||||
|
classList.push(className);
|
||||||
|
}
|
||||||
|
assert_array_equals(classList, ['foo', 'Foo']);
|
||||||
|
}, 'DOMTokenList is iterable via for-of loop.');
|
||||||
|
</script>
|
Loading…
Add table
Add a link
Reference in a new issue