summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-cascade/revert-val-010.html
blob: 58449e9132b786a2f489a1517b1be3becadaddbf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!DOCTYPE html>
<title>CSS Cascade: 'revert' appearing in setKeyframes</title>
<link rel="help" href="https://drafts.csswg.org/css-cascade/#default">
<link rel="help" href="https://drafts.csswg.org/web-animations-1/#dom-keyframeeffect-setkeyframes">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<h1 id=h1></h1>
<script>
  test(function() {
    let original = parseInt(getComputedStyle(h1).marginTop);

    // This test assumes that the UA style sheet sets a non-0px value on
    // <h1> elements:
    assert_not_equals(original, 0);

    let animation = h1.animate([
      { marginTop: `${original*4}px` },
      { marginTop: `${original*8}px` },
    ], {
      duration: 1000000,
      delay: -500000,
      easing: 'steps(2, end)'
    });

    let animated = parseInt(getComputedStyle(h1).marginTop);
    assert_equals(animated, original*6);

    animation.effect.setKeyframes([
      { marginTop: 'revert' },
      { marginTop: `${original*3}px` },
    ]);

    let animated_revert = parseInt(getComputedStyle(h1).marginTop);
    assert_equals(animated_revert, original*2);
  }, 'The revert works when appearing in setKeyframes');
</script>