Automated tests for the below commit have been missing.Would it be possible to add test coverage to avoid regressions in future? CL: === https://chromium.googlesource.com/chromium/src/+/194b86fb0c8470eb7516e1f38eca1862166174c1 Ref Bug: ======== https://bugs.chromium.org/p/chromium/issues/detail?id=754471 Thank you!
Actually we do have enough layout tests under: LayoutTests/animations/, we have tests for transform & opacity in there. vollick@, ajuma@: is my understanding correct?
Perhaps you could add a unit test that when the feature is enabled, animations don't get composited, and when it's disabled they do?
ajuma@: yes, that makes sense, will do. Thank you.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a commit d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a Author: Xida Chen <xidachen@chromium.org> Date: Thu Oct 26 17:14:52 2017 Implement animation targeted UMA This CL adds 3 animation specific UMAs. We first check the following 3 conditions: 1. Whether there is at least one composited animation. 2. Whether there is at least one main-thread animation. 3. Whether there is at least one main-thread animation, that it could be composited, but not due to running experiment(s). For each of the above conditions, record the draw time. The UMAs are designed for this experiment: crbug.com/754471, which is to turn off compositing 2D transform & opacity animations, and we'd like to have meaningful UMAs to measure the impact of the experiment. The CL also added unit tests to make sure that: 1. We are getting the correct count for each of the above three conditions. 2. We are getting the correct UMA reporting. 3. In CompositorAnimationsTest.cpp, we added test case to make sure that the transform animation is composited with the "TurnOff2DAndOpacityCompositorAnimations" disabled, and not composited when the flag is enabled. TBR=haraken@chromium.org Bug: 758439 , 761968 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ie6eb207df86cb47b3670472d256f7a63bbe39914 Reviewed-on: https://chromium-review.googlesource.com/636305 Commit-Queue: Xida Chen <xidachen@chromium.org> Reviewed-by: Ian Vollick <vollick@chromium.org> Reviewed-by: Robert Flack <flackr@chromium.org> Reviewed-by: enne <enne@chromium.org> Reviewed-by: Steven Holte <holte@chromium.org> Reviewed-by: Eric Willigers <ericwilligers@chromium.org> Cr-Commit-Position: refs/heads/master@{#511859} [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/animation/animation_host.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/animation/animation_host.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/animation/animation_player.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/animation/animation_player.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/animation/animation_ticker.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/animation/animation_ticker.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/animation/element_animations_unittest.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/scheduler/compositor_timing_history.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/scheduler/compositor_timing_history.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/scheduler/compositor_timing_history_unittest.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/scheduler/scheduler.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/scheduler/scheduler.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/scheduler/scheduler_unittest.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/trees/mutator_host.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/trees/proxy_impl.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/trees/proxy_impl.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/trees/single_thread_proxy.cc [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/cc/trees/single_thread_proxy.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/controller/BUILD.gn [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/core/animation/Animation.cpp [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/core/animation/Animation.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/core/animation/CompositorAnimations.cpp [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/core/animation/CompositorAnimations.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/core/animation/CompositorAnimationsTest.cpp [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/core/animation/DocumentAnimations.cpp [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/core/animation/DocumentTimeline.cpp [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/core/animation/DocumentTimeline.h [add] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/core/animation/test_data/transform-animation.html [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/platform/animation/CompositorAnimationHost.cpp [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/platform/animation/CompositorAnimationHost.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/platform/testing/RuntimeEnabledFeaturesTestHelpers.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/platform/testing/URLTestHelpers.cpp [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/third_party/WebKit/Source/platform/testing/URLTestHelpers.h [modify] https://crrev.com/d8bb3b2e9c6fb3b28cd4be68b1c5fbece8d4900a/tools/metrics/histograms/histograms.xml
Comment 1 by xidac...@chromium.org
, Sep 5 2017