Tests: Reimport attr-all-types WPT test

This has changed quite a bit since we imported it.
This commit is contained in:
Sam Atkins
2025-12-15 12:49:18 +00:00
parent ee3aa865af
commit c9f7e0d88c
Notes: github-actions[bot] 2025-12-17 11:54:50 +00:00
2 changed files with 73 additions and 25 deletions

View File

@@ -6,6 +6,11 @@
<script src="../../resources/testharnessreport.js"></script>
<style>
@property --number {
syntax: "<number>";
inherits: false;
initial-value: 3;
}
@property --length {
syntax: "<length>";
inherits: false;
@@ -91,9 +96,13 @@
}
test_valid_attr('content', 'attr(data-foo)', 'abc', '"abc"');
test_invalid_attr('content', 'attr(data-foo string)', 'abc');
test_valid_attr('content', 'attr(data-foo)', 'var(--number)', '"var(--number)"');
test_valid_attr('content', 'attr(data-foo raw-string)', 'abc', '"abc"');
test_valid_attr('content', 'attr(data-foo raw-string)', 'var(--number)', '"var(--number)"');
test_valid_attr('content', 'attr(data-foo,)', 'abc', '"abc"');
test_valid_attr('content', 'attr(data-foo, 3)', 'attr(', '"attr("');
test_valid_attr('content', 'attr(data-foo)', 'attr(', '"attr("');
test_valid_attr('content', 'attr(data-foo raw-string)', 'attr(', '"attr("');
test_valid_attr('content', 'attr(data-foo type(<string>))', '"abc"', '"abc"');
test_valid_attr('content', 'attr(data-foo type(<string>),)', '"abc"', '"abc"');
@@ -106,6 +115,10 @@
test_valid_attr('animation-name', 'attr(data-foo type(<custom-ident>))', 'anim', 'anim');
test_valid_attr('animation-name', 'attr(data-foo type(<custom-ident>), anim-fallback)', '"anim"', 'anim-fallback');
test_valid_attr('animation-name', 'attr(data-foo type(<custom-ident>), anim-fallback)', 'initial', 'anim-fallback');
test_valid_attr('animation-name', 'attr(data-foo type(<custom-ident>))', 'var(', '');
test_valid_attr('animation-name', 'attr(data-foo type(<custom-ident>), anim)', 'var(', 'anim');
test_valid_attr('animation-name', 'attr(data-foo type(<custom-ident>))', 'var(--x fallback)', '');
test_valid_attr('animation-name', 'attr(data-foo type(<custom-ident>))', 'attr(data-bar type(number))', '');
test_valid_attr('background-color', 'attr(data-foo type(<color>))', 'red', 'red');
test_valid_attr('background-color', 'attr(data-foo type(<color>))', '#ff0099aa', '#ff0099aa');
@@ -121,6 +134,10 @@
test_valid_attr('font-weight', 'attr(data-foo type(<number> | lighter | bold), lighter)', '10px', 'lighter');
test_valid_attr('font-weight', 'attr(data-foo type(<number>))', 'calc(3 + 3)', '6');
test_valid_attr('font-weight', 'attr(data-foo type(<number>), calc(10 + 20))', '10px', '30');
test_valid_attr('font-weight', 'attr(data-foo type(<number>))', 'attr(', '');
test_valid_attr('font-weight', 'attr(data-foo type(<number>), 10)', 'attr(', '10');
test_valid_attr('font-weight', 'attr(data-foo type(<number>))', 'attr(data-bar type(number))', '');
test_valid_attr('font-weight', 'attr(data-foo type(<number>))', 'attr(data-bar type(<number>) 3)', '');
test_valid_attr('font-size', 'attr(data-foo type(<percentage>))', '10%', '10%');
test_valid_attr('font-size', 'attr(data-foo type(<percentage>), 10px)', 'abc', '10px');
@@ -147,6 +164,8 @@
test_valid_attr('font-size', 'attr(data-foo %)', '10', '10%');
test_valid_attr('--x', 'attr(data-foo px) 11px', '10', '10px 11px');
test_valid_attr('font-weight', 'attr(data-foo number)', '10', '10');
test_valid_attr('--x', 'attr(data-foo type(<number>)) 11', '10', '10 11');
test_valid_attr('--string', 'attr(data-foo type(<string>))', '"hello"', '"hello"');
test_valid_attr('--string-list', 'attr(data-foo type(<string>+))', '"hello" "hi"', '"hello" "hi"');
@@ -157,9 +176,12 @@
test_valid_attr('--y', 'attr(data-foo type(*))', 'attr(data-bar type(<number>), 11)', '3');
test_valid_attr('width', 'attr(data-foo type(*))', 'attr(data-bar type(<number>), 11)', '3');
test_valid_attr('--y', 'attr(data-foo type(*))', 'attr(data-bar type(<number>), 11) var(--length, 3px)', '3 10px');
test_valid_attr('animation-name', 'attr(data-foo type(*))', 'attr(', '');
test_valid_attr('animation-name', 'attr(data-foo type(*), anim)', 'attr(', 'anim');
test_dimension_types_and_units();
test_invalid_attr('content', 'attr(data-foo string)', 'abc');
test_invalid_attr('animation-name', 'attr(data-foo type(string))', 'abc');
test_invalid_attr('animation-name', 'attr(data-foo type(< string>))', 'abc');
test_invalid_attr('animation-name', 'attr(data-foo type(<string >))', 'abc');
@@ -204,6 +226,12 @@
test_invalid_attr('width', 'attr(data-foo px)', '10px');
test_invalid_attr('width', 'attr(data-foo <px>)', '10');
test_invalid_attr('width', 'attr(data-foo xx)', '10');
test_invalid_attr('width', 'attr(data-foo px)', 'calc(1 + 3)');
test_invalid_attr('width', 'attr(data-foo px)', 'var(--number)');
test_invalid_attr('font-weight', 'attr(data-foo number)', 'calc(1 + 3)');
test_invalid_attr('font-weight', 'attr(data-foo number)', 'var(--number)');
test_invalid_attr('transition-duration', 'attr(data-foo ms)', '10px');
test_invalid_attr('transition-duration', 'attr(data-foo ms)', '10px foo');