| <!doctype html> |
| <meta charset=utf-8> |
| <title>KeyframeEffect.composite</title> |
| <link rel="help" |
| href="https://drafts.csswg.org/web-animations/#dom-keyframeeffect-composite"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="../../testcommon.js"></script> |
| <body> |
| <div id="log"></div> |
| <script> |
| 'use strict'; |
| |
| test(t => { |
| const anim = createDiv(t).animate(null); |
| assert_equals(anim.effect.composite, 'replace', |
| 'The default value should be replace'); |
| }, 'Default value'); |
| |
| test(t => { |
| const anim = createDiv(t).animate(null); |
| anim.effect.composite = 'add'; |
| assert_equals(anim.effect.composite, 'add', |
| 'The effect composite value should be replaced'); |
| }, 'Change composite value'); |
| |
| test(t => { |
| const anim = createDiv(t).animate({ left: '10px' }); |
| |
| anim.effect.composite = 'add'; |
| const keyframes = anim.effect.getKeyframes(); |
| assert_equals(keyframes[0].composite, 'auto', |
| 'unspecified keyframe composite value should be auto even ' + |
| 'if effect composite is set'); |
| }, 'Unspecified keyframe composite value when setting effect composite'); |
| |
| test(t => { |
| const anim = createDiv(t).animate({ left: '10px', composite: 'replace' }); |
| |
| anim.effect.composite = 'add'; |
| const keyframes = anim.effect.getKeyframes(); |
| assert_equals(keyframes[0].composite, 'replace', |
| 'specified keyframe composite value should not be overridden ' + |
| 'by setting effect composite'); |
| }, 'Specified keyframe composite value when setting effect composite'); |
| |
| </script> |