LibWeb: Parse border-image shorthand property

This commit is contained in:
Tim Ledbetter 2025-06-11 12:35:32 +01:00 committed by Sam Atkins
commit 923deb0c01
Notes: github-actions[bot] 2025-07-03 09:20:50 +00:00
10 changed files with 318 additions and 3 deletions

View file

@ -0,0 +1,22 @@
Harness status: OK
Found 17 tests
17 Pass
Pass e.style['border-image'] = "auto" should not set the property value
Pass e.style['border-image'] = "none, url(\"http://www.example.com/\")" should not set the property value
Pass e.style['border-image'] = "stretch repeat round" should not set the property value
Pass e.style['border-image'] = "fill" should not set the property value
Pass e.style['border-image'] = "1 2 3 4 5" should not set the property value
Pass e.style['border-image'] = "1% fill 2%" should not set the property value
Pass e.style['border-image'] = "1 / -2px" should not set the property value
Pass e.style['border-image'] = "-1 / 2px" should not set the property value
Pass e.style['border-image'] = "1 / 1 2 3 4 5" should not set the property value
Pass e.style['border-image'] = "1 2 3 4 5 / / 1px" should not set the property value
Pass e.style['border-image'] = "1 / / auto" should not set the property value
Pass e.style['border-image'] = "1 2% 3 4% / / 1%" should not set the property value
Pass e.style['border-image'] = "1 2% 3 4% fill / / 1 2 3 4 5" should not set the property value
Pass e.style['border-image'] = "1 / none / 1px" should not set the property value
Pass e.style['border-image'] = "1 2% 3 4% / 1 2 3 4 5 / 2" should not set the property value
Pass e.style['border-image'] = "1 2 3 4 5 / 1px / 1px" should not set the property value
Pass e.style['border-image'] = "1 / 1px / auto" should not set the property value

View file

@ -0,0 +1,36 @@
Harness status: OK
Found 30 tests
29 Pass
1 Fail
Pass e.style['border-image'] = "none" should set the property value
Pass e.style['border-image'] = "stretch" should set the property value
Pass e.style['border-image'] = "none 100% / 1 / 0 stretch" should set the property value
Pass e.style['border-image'] = "url(\"http://www.example.com/\") 1 2 3 4 fill" should set the property value
Pass e.style['border-image'] = "url(\"http://www.example.com/\") 1 2 3 4 fill / 1 / 0 stretch" should set the property value
Pass e.style['border-image'] = "url(\"http://www.example.com/\")" should set the property value
Pass e.style['border-image'] = "repeat round" should set the property value
Pass e.style['border-image'] = "none repeat round" should set the property value
Pass e.style['border-image'] = "space" should set the property value
Fail e.style['border-image'] = "none space space" should set the property value
Pass e.style['border-image'] = "none 100% / 1 / 0 space" should set the property value
Pass e.style['border-image'] = "1" should set the property value
Pass e.style['border-image'] = "none 1 1 1 1" should set the property value
Pass e.style['border-image'] = "none 1 / 1 / 0 stretch" should set the property value
Pass e.style['border-image'] = "url(\"http://www.example.com/\") 1 2% 3 4%" should set the property value
Pass e.style['border-image'] = "url(\"http://www.example.com/\") 1 2% 3 4% fill" should set the property value
Pass e.style['border-image'] = "url(\"http://www.example.com/\") fill 1 2% 3 4%" should set the property value
Pass e.style['border-image'] = "1 / 1px" should set the property value
Pass e.style['border-image'] = "1 2% 3 4% / 2%" should set the property value
Pass e.style['border-image'] = "1 2% 3 4% fill / 3" should set the property value
Pass e.style['border-image'] = "fill 1 2% 3 4% / auto" should set the property value
Pass e.style['border-image'] = "1 / 1px 2% 3 auto" should set the property value
Pass e.style['border-image'] = "1 / / 1px" should set the property value
Pass e.style['border-image'] = "1 2% 3 4% / / 2" should set the property value
Pass e.style['border-image'] = "url(\"http://www.example.com/\") 1 2% 3 4% fill / / 1px 2 3px 4" should set the property value
Pass e.style['border-image'] = "1 / 1px / 1px" should set the property value
Pass e.style['border-image'] = "1 2% 3 4% / 2% / 2" should set the property value
Pass e.style['border-image'] = "1 2% 3 4% fill / 3 / 1px 2 3px 4" should set the property value
Pass e.style['border-image'] = "1 / auto / 1px" should set the property value
Pass e.style['border-image'] = "1 2% 3 4% / 1px 2% 3 auto / 2" should set the property value