| Index: third_party/WebKit/LayoutTests/animations/use-count-SyntheticKeyframesInCompositedCSSAnimation.html
|
| diff --git a/third_party/WebKit/LayoutTests/animations/use-count-SyntheticKeyframesInCompositedCSSAnimation.html b/third_party/WebKit/LayoutTests/animations/use-count-SyntheticKeyframesInCompositedCSSAnimation.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..f6b97abb38cc4750e4739e3a9a275f50203bfb74
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/animations/use-count-SyntheticKeyframesInCompositedCSSAnimation.html
|
| @@ -0,0 +1,57 @@
|
| +<!DOCTYPE html>
|
| +<script src="../resources/testharness.js"></script>
|
| +<script src="../resources/testharnessreport.js"></script>
|
| +<style>
|
| +@keyframes noSyntheticKeyframes {
|
| + from { color: black; }
|
| + to { color: green; }
|
| +}
|
| +@keyframes customPropertySyntheticKeyframes {
|
| + to { --x: pants; }
|
| +}
|
| +@keyframes nonCompositedSyntheticKeyframes {
|
| + to { color: green; }
|
| +}
|
| +@keyframes compositedSyntheticKeyframes {
|
| + from {
|
| + opacity: 0;
|
| + }
|
| + to {
|
| + transform: rotate(45deg);
|
| + opacity: 1;
|
| + }
|
| +}
|
| +#target {
|
| + animation-duration: 1s;
|
| +}
|
| +</style>
|
| +<div id="target"></div>
|
| +<script>
|
| +// From UseCounter.h.
|
| +var SyntheticKeyframesInCompositedCSSAnimation = 664;
|
| +
|
| +function forceStyleRecalc() {
|
| + getComputedStyle(target).left;
|
| +}
|
| +
|
| +test(() => {
|
| + forceStyleRecalc();
|
| + assert_false(internals.isUseCounted(document, SyntheticKeyframesInCompositedCSSAnimation), 'No animations started');
|
| +
|
| + target.style.animationName = 'noSyntheticKeyframes';
|
| + forceStyleRecalc();
|
| + assert_false(internals.isUseCounted(document, SyntheticKeyframesInCompositedCSSAnimation), 'noSyntheticKeyframes');
|
| +
|
| + target.style.animationName = 'customPropertySyntheticKeyframes';
|
| + forceStyleRecalc();
|
| + assert_false(internals.isUseCounted(document, SyntheticKeyframesInCompositedCSSAnimation), 'customPropertySyntheticKeyframes');
|
| +
|
| + target.style.animationName = 'nonCompositedSyntheticKeyframes';
|
| + forceStyleRecalc();
|
| + assert_false(internals.isUseCounted(document, SyntheticKeyframesInCompositedCSSAnimation), 'nonCompositedSyntheticKeyframes');
|
| +
|
| + target.style.animationName = 'compositedSyntheticKeyframes';
|
| + forceStyleRecalc();
|
| + assert_true(internals.isUseCounted(document, SyntheticKeyframesInCompositedCSSAnimation), 'compositedSyntheticKeyframes');
|
| +}, 'The SyntheticKeyframesInCompositedCSSAnimation use counter should only be triggered by animations with composited properties with neutral keyframes');
|
| +</script>
|
|
|