<!DOCTYPE html> <meta charset=utf-8> <title>document.getAnimations tests</title> <link rel="help" href="https://w3c.github.io/web-animations/#dom-document-getanimations"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <script src="../../testcommon.js"></script> <body> <div id="log"></div> <div id="target"></div> <script> "use strict"; var gKeyFrames = { 'marginLeft': ['100px', '200px'] }; test(function(t) { assert_equals(document.getAnimations().length, 0, 'getAnimations returns an empty sequence for a document ' + 'with no animations'); }, 'Test document.getAnimations for non-animated content'); test(function(t) { var div = createDiv(t); var anim1 = div.animate(gKeyFrames, 100 * MS_PER_SEC); var anim2 = div.animate(gKeyFrames, 100 * MS_PER_SEC); assert_equals(document.getAnimations().length, 2, 'getAnimation returns running animations'); anim1.finish(); anim2.finish(); assert_equals(document.getAnimations().length, 0, 'getAnimation only returns running animations'); }, 'Test document.getAnimations for script-generated animations') test(function(t) { var div = createDiv(t); var anim1 = div.animate(gKeyFrames, 100 * MS_PER_SEC); var anim2 = div.animate(gKeyFrames, 100 * MS_PER_SEC); assert_array_equals(document.getAnimations(), [ anim1, anim2 ], 'getAnimations() returns running animations'); }, 'Test the order of document.getAnimations with script generated animations') test(function(t) { var effect = new KeyframeEffectReadOnly(null, gKeyFrames, 100 * MS_PER_SEC); var anim = new Animation(effect, document.timeline); anim.play(); assert_equals(document.getAnimations().length, 0, 'document.getAnimations() only returns animations targeting ' + 'elements in this document'); }, 'Test document.getAnimations with null target'); </script> </body>