Index: cc/trees/layer_tree_host_unittest_context.cc |
diff --git a/cc/trees/layer_tree_host_unittest_context.cc b/cc/trees/layer_tree_host_unittest_context.cc |
index 1c3da6120382c940a80e1fc96f01d9b3640fb761..c99d5aad96d443dfc56f69e30f48af836d3aceb0 100644 |
--- a/cc/trees/layer_tree_host_unittest_context.cc |
+++ b/cc/trees/layer_tree_host_unittest_context.cc |
@@ -479,27 +479,51 @@ class LayerTreeHostContextTestLostContextSucceedsWithContent |
}; |
TEST_F(LayerTreeHostContextTestLostContextSucceedsWithContent, |
- NoSurface_SingleThread) { |
+ NoSurface_SingleThread_DirectRenderer) { |
use_surface_ = false; |
- RunTest(false); |
+ RunTest(false, false); |
} |
TEST_F(LayerTreeHostContextTestLostContextSucceedsWithContent, |
- NoSurface_MultiThread) { |
+ NoSurface_SingleThread_DelegatingRenderer) { |
use_surface_ = false; |
- RunTest(true); |
+ RunTest(false, true); |
} |
TEST_F(LayerTreeHostContextTestLostContextSucceedsWithContent, |
- WithSurface_SingleThread) { |
+ NoSurface_MultiThread_DirectRenderer) { |
+ use_surface_ = false; |
+ RunTest(true, false); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextSucceedsWithContent, |
+ NoSurface_MultiThread_DelegatingRenderer) { |
+ use_surface_ = false; |
+ RunTest(true, true); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextSucceedsWithContent, |
+ WithSurface_SingleThread_DirectRenderer) { |
use_surface_ = true; |
- RunTest(false); |
+ RunTest(false, false); |
} |
TEST_F(LayerTreeHostContextTestLostContextSucceedsWithContent, |
- WithSurface_MultiThread) { |
+ WithSurface_SingleThread_DelegatingRenderer) { |
use_surface_ = true; |
- RunTest(true); |
+ RunTest(false, true); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextSucceedsWithContent, |
+ WithSurface_MultiThread_DirectRenderer) { |
+ use_surface_ = true; |
+ RunTest(true, false); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextSucceedsWithContent, |
+ WithSurface_MultiThread_DelegatingRenderer) { |
+ use_surface_ = true; |
+ RunTest(true, true); |
} |
class LayerTreeHostContextTestOffscreenContextFails |
@@ -602,51 +626,99 @@ class LayerTreeHostContextTestLostContextFails |
}; |
TEST_F(LayerTreeHostContextTestLostContextFails, |
- FailReinitialize100_SingleThread) { |
+ FailReinitialize100_SingleThread_DirectRenderer) { |
+ times_to_fail_reinitialize_ = 100; |
+ times_to_fail_recreate_ = 0; |
+ times_to_lose_on_recreate_ = 0; |
+ RunTest(false, false); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextFails, |
+ FailReinitialize100_SingleThread_DelegatingRenderer) { |
times_to_fail_reinitialize_ = 100; |
times_to_fail_recreate_ = 0; |
times_to_lose_on_recreate_ = 0; |
- RunTest(false); |
+ RunTest(false, true); |
} |
TEST_F(LayerTreeHostContextTestLostContextFails, |
- FailReinitialize100_MultiThread) { |
+ FailReinitialize100_MultiThread_DirectRenderer) { |
times_to_fail_reinitialize_ = 100; |
times_to_fail_recreate_ = 0; |
times_to_lose_on_recreate_ = 0; |
- RunTest(true); |
+ RunTest(true, false); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextFails, |
+ FailReinitialize100_MultiThread_DelegatingRenderer) { |
+ times_to_fail_reinitialize_ = 100; |
+ times_to_fail_recreate_ = 0; |
+ times_to_lose_on_recreate_ = 0; |
+ RunTest(true, true); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextFails, |
+ FailRecreate100_SingleThread_DirectRenderer) { |
+ times_to_fail_reinitialize_ = 0; |
+ times_to_fail_recreate_ = 100; |
+ times_to_lose_on_recreate_ = 0; |
+ RunTest(false, false); |
} |
TEST_F(LayerTreeHostContextTestLostContextFails, |
- FailRecreate100_SingleThread) { |
+ FailRecreate100_SingleThread_DelegatingRenderer) { |
times_to_fail_reinitialize_ = 0; |
times_to_fail_recreate_ = 100; |
times_to_lose_on_recreate_ = 0; |
- RunTest(false); |
+ RunTest(false, true); |
} |
TEST_F(LayerTreeHostContextTestLostContextFails, |
- FailRecreate100_MultiThread) { |
+ FailRecreate100_MultiThread_DirectRenderer) { |
times_to_fail_reinitialize_ = 0; |
times_to_fail_recreate_ = 100; |
times_to_lose_on_recreate_ = 0; |
- RunTest(true); |
+ RunTest(true, false); |
} |
TEST_F(LayerTreeHostContextTestLostContextFails, |
- LoseOnRecreate100_SingleThread) { |
+ FailRecreate100_MultiThread_DelegatingRenderer) { |
+ times_to_fail_reinitialize_ = 0; |
+ times_to_fail_recreate_ = 100; |
+ times_to_lose_on_recreate_ = 0; |
+ RunTest(true, true); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextFails, |
+ LoseOnRecreate100_SingleThread_DirectRenderer) { |
+ times_to_fail_reinitialize_ = 0; |
+ times_to_fail_recreate_ = 0; |
+ times_to_lose_on_recreate_ = 100; |
+ RunTest(false, false); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextFails, |
+ LoseOnRecreate100_SingleThread_DelegatingRenderer) { |
+ times_to_fail_reinitialize_ = 0; |
+ times_to_fail_recreate_ = 0; |
+ times_to_lose_on_recreate_ = 100; |
+ RunTest(false, true); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextFails, |
+ LoseOnRecreate100_MultiThread_DirectRenderer) { |
times_to_fail_reinitialize_ = 0; |
times_to_fail_recreate_ = 0; |
times_to_lose_on_recreate_ = 100; |
- RunTest(false); |
+ RunTest(true, false); |
} |
TEST_F(LayerTreeHostContextTestLostContextFails, |
- LoseOnRecreate100_MultiThread) { |
+ LoseOnRecreate100_MultiThread_DelegatingRenderer) { |
times_to_fail_reinitialize_ = 0; |
times_to_fail_recreate_ = 0; |
times_to_lose_on_recreate_ = 100; |
- RunTest(true); |
+ RunTest(true, true); |
} |
class LayerTreeHostContextTestFinishAllRenderingAfterLoss |
@@ -750,27 +822,51 @@ class LayerTreeHostContextTestLostContextAndEvictTextures |
}; |
TEST_F(LayerTreeHostContextTestLostContextAndEvictTextures, |
- LoseAfterEvict_SingleThread) { |
+ LoseAfterEvict_SingleThread_DirectRenderer) { |
+ lose_after_evict_ = true; |
+ RunTest(false, false); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextAndEvictTextures, |
+ LoseAfterEvict_SingleThread_DelegatingRenderer) { |
+ lose_after_evict_ = true; |
+ RunTest(false, true); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextAndEvictTextures, |
+ LoseAfterEvict_MultiThread_DirectRenderer) { |
lose_after_evict_ = true; |
- RunTest(false); |
+ RunTest(true, false); |
} |
TEST_F(LayerTreeHostContextTestLostContextAndEvictTextures, |
- LoseAfterEvict_MultiThread) { |
+ LoseAfterEvict_MultiThread_DelegatingRenderer) { |
lose_after_evict_ = true; |
- RunTest(true); |
+ RunTest(true, true); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextAndEvictTextures, |
+ LoseBeforeEvict_SingleThread_DirectRenderer) { |
+ lose_after_evict_ = false; |
+ RunTest(false, false); |
+} |
+ |
+TEST_F(LayerTreeHostContextTestLostContextAndEvictTextures, |
+ LoseBeforeEvict_SingleThread_DelegatingRenderer) { |
+ lose_after_evict_ = false; |
+ RunTest(false, true); |
} |
TEST_F(LayerTreeHostContextTestLostContextAndEvictTextures, |
- LoseBeforeEvict_SingleThread) { |
+ LoseBeforeEvict_MultiThread_DirectRenderer) { |
lose_after_evict_ = false; |
- RunTest(false); |
+ RunTest(true, false); |
} |
TEST_F(LayerTreeHostContextTestLostContextAndEvictTextures, |
- LoseBeforeEvict_MultiThread) { |
+ LoseBeforeEvict_MultiThread_DelegatingRenderer) { |
lose_after_evict_ = false; |
- RunTest(true); |
+ RunTest(true, true); |
} |
class LayerTreeHostContextTestLostContextWhileUpdatingResources |
@@ -1373,12 +1469,12 @@ class LayerTreeHostTestCannotCreateIfCannotCreateOutputSurface |
LayerTreeHostTestCannotCreateIfCannotCreateOutputSurface() |
: FakeLayerTreeHostClient(FakeLayerTreeHostClient::DIRECT_3D) {} |
- // FakeLayerTreeHostClient |
+ // FakeLayerTreeHostClient implementation. |
virtual scoped_ptr<OutputSurface> CreateOutputSurface() OVERRIDE { |
return scoped_ptr<OutputSurface>(); |
} |
- void RunTest(bool threaded) { |
+ void RunTest(bool threaded, bool delegating_renderer) { |
scoped_ptr<base::Thread> impl_thread; |
scoped_ptr<cc::Thread> impl_ccthread(NULL); |
if (threaded) { |