summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-animations/parsing/animation-computed.html
blob: 2a70585aadcd148889a9d27ddd97be01968e951f (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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Animations: getComputedStyle().animation</title>
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation">
<meta name="assert" content="animation computed value is as specified.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="target"></div>
<script>
// <single-animation> = <time> || <easing-function> || <time> ||
// <single-animation-iteration-count> || <single-animation-direction> ||
// <single-animation-fill-mode> || <single-animation-play-state> ||
// [ none | <keyframes-name> ]

test(() => {
  assert_equals(getComputedStyle(document.getElementById('target')).animation, "none");
}, "Default animation value");

test_computed_value("animation", "1s", "1s");
test_computed_value("animation", "cubic-bezier(0, -2, 1, 3)", "cubic-bezier(0, -2, 1, 3)");
test_computed_value("animation", "ease-in-out", "ease-in-out");
test_computed_value("animation", "1s -3s", "1s -3s");
test_computed_value("animation", "4", "4");
test_computed_value("animation", "reverse", "reverse");
test_computed_value("animation", "both", "both");
test_computed_value("animation", "paused", "paused");
test_computed_value("animation", "none", "none");
test_computed_value("animation", "anim", "anim");

test_computed_value("animation", "anim paused both reverse 4 1s -3s cubic-bezier(0, -2, 1, 3)",
  "1s cubic-bezier(0, -2, 1, 3) -3s 4 reverse both paused anim");

test_computed_value("animation", "anim paused both reverse, 4 1s -3s cubic-bezier(0, -2, 1, 3)",
  "reverse both paused anim, 1s cubic-bezier(0, -2, 1, 3) -3s 4");

test_computed_value("animation", "none, none", "none, none");

test(() => {
  const target = document.getElementById('target');
  target.style.animation = "initial";
  target.style.animationDelay = "1s";
  assert_equals(getComputedStyle(target).animation, "0s 1s");
}, "Animation with a delay but no duration");

</script>
</body>
</html>