Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1544)

Unified Diff: cc/trees/layer_tree_host_unittest_context.cc

Issue 504373002: Don't destroy RenderWidgetCompositor during DoDeferredClose (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 8fcfa28a10f1067557ae51fe21fdc4abfc20ae24..8e7aa258c18fe4d7fce348a497148afe72012d82 100644
--- a/cc/trees/layer_tree_host_unittest_context.cc
+++ b/cc/trees/layer_tree_host_unittest_context.cc
@@ -314,6 +314,77 @@ class LayerTreeHostClientNotReadyDoesNotCreateOutputSurface
SINGLE_AND_MULTI_THREAD_TEST_F(
LayerTreeHostClientNotReadyDoesNotCreateOutputSurface);
+class LayerTreeHostClientFinishedDoesNotCreateOutputSurface
+ : public LayerTreeHostContextTest {
+ public:
+ LayerTreeHostClientFinishedDoesNotCreateOutputSurface()
+ : LayerTreeHostContextTest() {}
+
+ virtual void WillBeginTest() OVERRIDE {
+ layer_tree_host()->SetLayerTreeHostClientReady();
+ layer_tree_host()->SetLayerTreeHostClientFinished();
+ }
+
+ virtual void BeginTest() OVERRIDE {
+ PostSetNeedsCommitToMainThread();
+ EndTest();
+ }
+
+ virtual scoped_ptr<OutputSurface> CreateOutputSurface(
+ bool fallback) OVERRIDE {
+ EXPECT_TRUE(false);
+ return scoped_ptr<OutputSurface>();
+ }
+
+ virtual void DidInitializeOutputSurface() OVERRIDE { EXPECT_TRUE(false); }
+
+ virtual void AfterTest() OVERRIDE {}
+};
+
+SINGLE_AND_MULTI_THREAD_TEST_F(
+ LayerTreeHostClientFinishedDoesNotCreateOutputSurface);
+
+class LayerTreeHostClientFinishedDoesNotCreateSecondSurface
+ : public LayerTreeHostContextTest {
+ public:
+ LayerTreeHostClientFinishedDoesNotCreateSecondSurface()
+ : LayerTreeHostContextTest(), attempted_create_output_surface_(false) {}
+
+ virtual void WillBeginTest() OVERRIDE {
+ layer_tree_host()->SetLayerTreeHostClientReady();
+ }
+
+ virtual void BeginTest() OVERRIDE {
+ PostSetNeedsCommitToMainThread();
+ EndTest();
+ }
+
+ virtual scoped_ptr<OutputSurface> CreateOutputSurface(
+ bool fallback) OVERRIDE {
+ EXPECT_FALSE(attempted_create_output_surface_);
+ layer_tree_host()->SetLayerTreeHostClientFinished();
+ ExpectCreateToFail();
+ attempted_create_output_surface_ = true;
+ // Returning null here will post another task to create another surface.
+ // However, because the LTH client is finished it should never call this
+ // again.
+ PostSetNeedsCommitToMainThread();
+ return scoped_ptr<OutputSurface>();
+ }
+
+ virtual void DidInitializeOutputSurface() OVERRIDE { EXPECT_TRUE(false); }
+
+ virtual void AfterTest() OVERRIDE {
+ EXPECT_TRUE(attempted_create_output_surface_);
+ }
+
+ private:
+ bool attempted_create_output_surface_;
+};
+
+SINGLE_AND_MULTI_THREAD_TEST_F(
+ LayerTreeHostClientFinishedDoesNotCreateSecondSurface);
+
class LayerTreeHostContextTestLostContextSucceedsWithContent
: public LayerTreeHostContextTestLostContextSucceeds {
public:
« cc/trees/layer_tree_host.cc ('K') | « cc/trees/layer_tree_host.cc ('k') | cc/trees/proxy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698