commit 58b6a9cb2080d16e6c777cc65d487a274f35491c
parent 88b4438d75ec30ffd628e52a26d671203034575d
Author: Fredrik Söderquist <fs@opera.com>
Date: Wed, 26 Nov 2025 08:54:46 +0000
Bug 2001680 [wpt PR 56190] - Move animations/composition/clip-composition.html to WPT, a=testonly
Automatic update from web-platform-tests
Move animations/composition/clip-composition.html to WPT
Move the test and perform a mechanical rewrite:
* Change assertComposition() to test_composition().
* Change 'is' to 'expect' in the expectation objects.
* Include required testharness.js and framework.
* Add link to spec.
Bug: 40663834
Change-Id: I1500a9271ad85d81016b3ae6261139b37ee183be
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7185725
Reviewed-by: Kevin Ellis <kevers@chromium.org>
Commit-Queue: Fredrik Söderquist <fs@opera.com>
Cr-Commit-Position: refs/heads/main@{#1549141}
--
wpt-commits: 4a23e073fffc3c11f4223d6f64874fddc0fcbb86
wpt-pr: 56190
Diffstat:
1 file changed, 92 insertions(+), 0 deletions(-)
diff --git a/testing/web-platform/tests/css/css-masking/animations/clip-composition.html b/testing/web-platform/tests/css/css-masking/animations/clip-composition.html
@@ -0,0 +1,92 @@
+<!DOCTYPE html>
+<title>clip composition</title>
+<link rel="help" href="https://drafts.fxtf.org/css-masking-1/#clip-property">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+<body>
+<script>
+test_composition({
+ property: 'clip',
+ underlying: 'rect(0px 10px 20px 30px)',
+ addFrom: 'rect(40px 50px 60px 70px)',
+ addTo: 'rect(140px 150px 160px 170px)',
+}, [
+ {at: -1, expect: 'rect(-60px -40px -20px 0px)'},
+ {at: 0, expect: 'rect(40px 60px 80px 100px)'},
+ {at: 0.25, expect: 'rect(65px 85px 105px 125px)'},
+ {at: 0.75, expect: 'rect(115px 135px 155px 175px)'},
+ {at: 1, expect: 'rect(140px 160px 180px 200px)'},
+ {at: 2, expect: 'rect(240px 260px 280px 300px)'},
+]);
+
+test_composition({
+ property: 'clip',
+ underlying: 'auto',
+ addFrom: 'rect(0px 0px 0px 0px)',
+ addTo: 'rect(100px 100px 100px 100px)',
+}, [
+ {at: -1, expect: 'rect(-100px -100px -100px -100px)'},
+ {at: 0, expect: 'rect(0px 0px 0px 0px)'},
+ {at: 0.25, expect: 'rect(25px 25px 25px 25px)'},
+ {at: 0.75, expect: 'rect(75px 75px 75px 75px)'},
+ {at: 1, expect: 'rect(100px 100px 100px 100px)'},
+ {at: 2, expect: 'rect(200px 200px 200px 200px)'},
+]);
+
+test_composition({
+ property: 'clip',
+ underlying: 'rect(50px auto auto 50px)',
+ addFrom: 'rect(50px auto auto 50px)',
+ addTo: 'rect(100px 100px 100px 100px)',
+}, [
+ {at: -1, expect: 'rect(100px auto auto 100px)'},
+ {at: 0, expect: 'rect(100px auto auto 100px)'},
+ {at: 0.25, expect: 'rect(100px auto auto 100px)'},
+ {at: 0.75, expect: 'rect(100px 100px 100px 100px)'},
+ {at: 1, expect: 'rect(100px 100px 100px 100px)'},
+ {at: 2, expect: 'rect(100px 100px 100px 100px)'},
+]);
+
+test_composition({
+ property: 'clip',
+ underlying: 'rect(50px 50px 50px 50px)',
+ addFrom: 'rect(50px auto auto 50px)',
+ addTo: 'rect(100px auto auto 100px)',
+}, [
+ {at: -1, expect: 'rect(0px auto auto 0px)'},
+ {at: 0, expect: 'rect(50px auto auto 50px)'},
+ {at: 0.25, expect: 'rect(62.5px auto auto 62.5px)'},
+ {at: 0.75, expect: 'rect(87.5px auto auto 87.5px)'},
+ {at: 1, expect: 'rect(100px auto auto 100px)'},
+ {at: 2, expect: 'rect(150px auto auto 150px)'},
+]);
+
+test_composition({
+ property: 'clip',
+ underlying: 'rect(50px auto auto 50px)',
+ addFrom: 'rect(50px 50px 50px 50px)',
+ replaceTo: 'rect(100px auto auto 100px)',
+}, [
+ {at: -1, expect: 'rect(50px 50px 50px 50px)'},
+ {at: 0, expect: 'rect(50px 50px 50px 50px)'},
+ {at: 0.25, expect: 'rect(50px 50px 50px 50px)'},
+ {at: 0.75, expect: 'rect(100px auto auto 100px)'},
+ {at: 1, expect: 'rect(100px auto auto 100px)'},
+ {at: 2, expect: 'rect(100px auto auto 100px)'},
+]);
+
+test_composition({
+ property: 'clip',
+ underlying: 'rect(50px 50px 50px 50px)',
+ addFrom: 'rect(50px auto auto 50px)',
+ addTo: 'auto',
+}, [
+ {at: -1, expect: 'rect(50px auto auto 50px)'},
+ {at: 0, expect: 'rect(50px auto auto 50px)'},
+ {at: 0.25, expect: 'rect(50px auto auto 50px)'},
+ {at: 0.75, expect: 'auto'},
+ {at: 1, expect: 'auto'},
+ {at: 2, expect: 'auto'},
+]);
+</script>