summaryrefslogtreecommitdiffstats
path: root/dom/animation/test/mozilla/file_disable_animations_api_implicit_keyframes.html
blob: 9cd05e7d403ae8ab07c2ad39930da7c43b162da6 (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
<!doctype html>
<meta charset=utf-8>
<script src="../testcommon.js"></script>
<body>
<script>
'use strict';

// Tests for cases we should throw an exception for if implicit keyframes are
// disabled.
var gTests = [
  { desc: "single Keyframe value",
    keyframes: { left: "100px" } },
  { desc: "single Keyframe with no offset",
    keyframes: [{ left: "100px" }] },
  { desc: "single Keyframe with 0% offset",
    keyframes: [{ left: "100px", offset: 0 }] },
  { desc: "single Keyframe with 100% offset",
    keyframes: [{ left: "100px", offset: 1 }] },
  { desc: "multiple Keyframes with missing 0% Keyframe",
    keyframes: [{ left: "100px", offset: 0.25 },
                { left: "200px", offset: 0.50 },
                { left: "300px", offset: 1.00 }] },
  { desc: "multiple Keyframes with missing 100% Keyframe",
    keyframes: [{ left: "100px", offset: 0.00 },
                { left: "200px", offset: 0.50 },
                { left: "300px", offset: 0.75 }] },
  { desc: "multiple Keyframes with missing properties on first Keyframe",
    keyframes: [{ left: "100px", offset: 0.0 },
                { left: "200px", top: "200px", offset: 0.5 },
                { left: "300px", top: "300px", offset: 1.0 }] },
  { desc: "multiple Keyframes with missing properties on last Keyframe",
    keyframes: [{ left: "100px", top: "200px", offset: 0.0 },
                { left: "200px", top: "200px", offset: 0.5 },
                { left: "300px", offset: 1.0 }] },
];

gTests.forEach(function(subtest) {
  test(function(t) {
    var div = addDiv(t);
    assert_throws("NotSupportedError", function() {
      div.animate(subtest.keyframes, 100 * MS_PER_SEC);
    });
  }, "Element.animate() throws with " + subtest.desc);
});

done();
</script>
</body>