summaryrefslogtreecommitdiffstats
path: root/cc
diff options
context:
space:
mode:
authormiletus@chromium.org <miletus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-08-14 19:50:09 +0000
committermiletus@chromium.org <miletus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-08-14 19:51:19 +0000
commitaa5d90ef6c87eb7a94ae343bb78e5f9d4ad40787 (patch)
tree8afdf740656cbe2b7ed63adf7f93808caacd3e30 /cc
parent86493cdf8af35fdd99e7034d0e34705e595576d4 (diff)
downloadchromium_src-aa5d90ef6c87eb7a94ae343bb78e5f9d4ad40787.zip
chromium_src-aa5d90ef6c87eb7a94ae343bb78e5f9d4ad40787.tar.gz
chromium_src-aa5d90ef6c87eb7a94ae343bb78e5f9d4ad40787.tar.bz2
Enable test LayerTreeHostTestBreakSwapPromise with verbose logging information
The log of the flaky LayerTreeHostTestBreakSwapPromise test shows that [ RUN ] LayerTreeHostTestBreakSwapPromise.RunMultiThread_DelegatingRenderer_ImplSidePaint c:\b\build\slave\win_x64_builder\build\src\cc\trees\layer_tree_host_unittest.cc(4500): error: Value of: swap_promise_result_[2].did_not_swap_called Actual: false Expected: true c:\b\build\slave\win_x64_builder\build\src\cc\trees\layer_tree_host_unittest.cc(4501): error: Value of: swap_promise_result_[2].reason Actual: 0 Expected: SwapPromise::SWAP_FAILS Which is: 1 [ FAILED ] LayerTreeHostTestBreakSwapPromise.RunMultiThread_DelegatingRenderer_ImplSidePaint (3 ms) We have a EXPECT_TRUE on the SwapPromise's dtor to be called which passes. It means we destroyed the SwapPromise without ever breaking them first (no DidNotSwap ever called). I checked all the code path where we destroy SwapPromise and we always break them first. So I can't figure out why it is the case. I am adding some logging information and turn this test back on, hopefully next time it fails on the bot I can use the extra logging information to debug. BUG=393995 Review URL: https://codereview.chromium.org/477443002 Cr-Commit-Position: refs/heads/master@{#289679} git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289679 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc')
-rw-r--r--cc/trees/layer_tree_host_unittest.cc16
1 files changed, 15 insertions, 1 deletions
diff --git a/cc/trees/layer_tree_host_unittest.cc b/cc/trees/layer_tree_host_unittest.cc
index 20e8c24..a17c80b 100644
--- a/cc/trees/layer_tree_host_unittest.cc
+++ b/cc/trees/layer_tree_host_unittest.cc
@@ -4423,11 +4423,19 @@ class TestSwapPromise : public SwapPromise {
virtual ~TestSwapPromise() {
base::AutoLock lock(result_->lock);
+ LOG(ERROR) << "~TestSwapPromise() "
+ << " did_swap_called " << result_->did_swap_called
+ << " did_not_swap_called " << result_->did_not_swap_called
+ << " result addr " << result_;
result_->dtor_called = true;
}
virtual void DidSwap(CompositorFrameMetadata* metadata) OVERRIDE {
base::AutoLock lock(result_->lock);
+ LOG(ERROR) << "TestSwapPromise::DidSwap "
+ << " did_swap_called " << result_->did_swap_called
+ << " did_not_swap_called " << result_->did_not_swap_called
+ << " result addr " << result_;
EXPECT_FALSE(result_->did_swap_called);
EXPECT_FALSE(result_->did_not_swap_called);
result_->did_swap_called = true;
@@ -4435,6 +4443,11 @@ class TestSwapPromise : public SwapPromise {
virtual void DidNotSwap(DidNotSwapReason reason) OVERRIDE {
base::AutoLock lock(result_->lock);
+ LOG(ERROR) << "TestSwapPromise::DidNotSwap "
+ << " reason " << reason
+ << " did_swap_called " << result_->did_swap_called
+ << " did_not_swap_called " << result_->did_not_swap_called
+ << " result addr " << result_;
EXPECT_FALSE(result_->did_swap_called);
EXPECT_FALSE(result_->did_not_swap_called);
result_->did_not_swap_called = true;
@@ -4520,7 +4533,8 @@ class LayerTreeHostTestBreakSwapPromise : public LayerTreeHostTest {
};
// TODO(miletus): Flaky test: crbug.com/393995
-// MULTI_THREAD_TEST_F(LayerTreeHostTestBreakSwapPromise);
+// Enabled with verbose logging information.
+MULTI_THREAD_TEST_F(LayerTreeHostTestBreakSwapPromise);
class LayerTreeHostTestBreakSwapPromiseForVisibilityAbortedCommit
: public LayerTreeHostTest {