Bug 1067769 - Part 4: Add some simple tests for document.getAnimation() in wpt. r=birtles draft
authorBoris Chiou <boris.chiou@gmail.com>
Thu, 28 Apr 2016 23:22:43 +0800
changeset 357390 4cb041aea661f2355bd693e983e407f9df6838b5
parent 357389 44b919cb3e227a3aa6b2d0adce582d4e8338b8f9
child 357391 4c8fa7bfb6502c78a96e1af1e2a6d98d7708d7dd
push id16759
push userbchiou@mozilla.com
push dateThu, 28 Apr 2016 15:27:13 +0000
reviewersbirtles
bugs1067769
milestone49.0a1
Bug 1067769 - Part 4: Add some simple tests for document.getAnimation() in wpt. r=birtles MozReview-Commit-ID: Ip2XYKMfUjb
testing/web-platform/tests/web-animations/document/getAnimations.html
--- a/testing/web-platform/tests/web-animations/document/getAnimations.html
+++ b/testing/web-platform/tests/web-animations/document/getAnimations.html
@@ -6,20 +6,48 @@
 <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) {
-  var effect = new KeyframeEffectReadOnly(null,
-                                          { left: ['10px', '20px'] },
-                                          100 * MS_PER_SEC);
+  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');