Bug 1720553 [wpt PR 29665] - Deflake playing-an-animation.html, a=testonly
authorXida Chen <xidachen@chromium.org>
Sat, 17 Jul 2021 09:54:25 +0000
changeset 586048 56c02e5f7e6a7802f7b17c8427411b0d94e03732
parent 586047 2eb9ec1f61f4d7470f3efa0f3ca3691b9d1c1178
child 586049 61980e7507f8c2cc79f7da6e39e7432cf0eb087d
push id146502
push userwptsync@mozilla.com
push dateMon, 19 Jul 2021 16:05:56 +0000
treeherderautoland@835956c1727a [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstestonly
bugs1720553, 29665, 1198515, 3027227, 902034
milestone92.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1720553 [wpt PR 29665] - Deflake playing-an-animation.html, a=testonly Automatic update from web-platform-tests Deflake playing-an-animation.html The root cause of the flakiness seems to be a floating point precision issue. This CL fixed it by introducing an epsilon. Without this fix, I can repro the flakiness locally very easily. With this fix, I have ran 1000 times with running 48 content shell in parallel and there is no flake. Bug: 1198515 Change-Id: I6eaddebe12bba5131ee340549f84b7b27b729c37 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3027227 Reviewed-by: Kevin Ellis <kevers@chromium.org> Commit-Queue: Xida Chen <xidachen@chromium.org> Cr-Commit-Position: refs/heads/master@{#902034} -- wpt-commits: a1cb55f97a641485a96cf61766cdf926775813d6 wpt-pr: 29665
testing/web-platform/tests/web-animations/timing-model/animations/playing-an-animation.html
--- a/testing/web-platform/tests/web-animations/timing-model/animations/playing-an-animation.html
+++ b/testing/web-platform/tests/web-animations/timing-model/animations/playing-an-animation.html
@@ -146,17 +146,17 @@ promise_test(async t => {
 
   const playTime = animation.timeline.currentTime;
   animation.play();
   assert_true(animation.pending, 'Animation should be play-pending');
 
   await animation.ready;
 
   assert_false(animation.pending, 'animation should no longer be pending');
-  assert_greater_than(animation.startTime, playTime,
+  assert_time_greater_than_equal(animation.startTime, playTime,
                       'The start time of the playing animation should be set');
 }, 'Playing a canceled animation sets the start time');
 
 promise_test(async t => {
   const animation = createDiv(t).animate(null, 100 * MS_PER_SEC);
   animation.playbackRate = -1;
   animation.cancel();
   assert_equals(animation.startTime, null,
@@ -164,14 +164,14 @@ promise_test(async t => {
 
   const playTime = animation.timeline.currentTime;
   animation.play();
   assert_true(animation.pending, 'Animation should be play-pending');
 
   await animation.ready;
 
   assert_false(animation.pending, 'Animation should no longer be pending');
-  assert_greater_than(animation.startTime, playTime + 100 * MS_PER_SEC,
+  assert_time_greater_than_equal(animation.startTime, playTime + 100 * MS_PER_SEC,
                       'The start time of the playing animation should be set');
 }, 'Playing a canceled animation backwards sets the start time');
 
 </script>
 </body>