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

Unified Diff: content/browser/compositor/reflector_impl_unittest.cc

Issue 865673003: Revert "compositor: Fix texture flipping for SW mirroring with surfaceless" (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 11 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
« no previous file with comments | « content/browser/compositor/reflector_impl.cc ('k') | content/content_tests.gypi » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/browser/compositor/reflector_impl_unittest.cc
diff --git a/content/browser/compositor/reflector_impl_unittest.cc b/content/browser/compositor/reflector_impl_unittest.cc
deleted file mode 100644
index 7483ae6f1443e69b407fa46946834028415693cd..0000000000000000000000000000000000000000
--- a/content/browser/compositor/reflector_impl_unittest.cc
+++ /dev/null
@@ -1,155 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/message_loop/message_loop.h"
-#include "base/run_loop.h"
-#include "base/single_thread_task_runner.h"
-#include "cc/test/fake_output_surface_client.h"
-#include "cc/test/test_context_provider.h"
-#include "cc/test/test_web_graphics_context_3d.h"
-#include "content/browser/compositor/browser_compositor_output_surface.h"
-#include "content/browser/compositor/reflector_impl.h"
-#include "content/browser/compositor/test/no_transport_image_transport_factory.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/compositor/compositor.h"
-#include "ui/compositor/layer.h"
-#include "ui/compositor/test/context_factories_for_test.h"
-
-namespace content {
-namespace {
-class FakeTaskRunner : public base::SingleThreadTaskRunner {
- public:
- FakeTaskRunner() {}
-
- bool PostNonNestableDelayedTask(const tracked_objects::Location& from_here,
- const base::Closure& task,
- base::TimeDelta delay) override {
- return true;
- }
- bool PostDelayedTask(const tracked_objects::Location& from_here,
- const base::Closure& task,
- base::TimeDelta delay) override {
- return true;
- }
- bool RunsTasksOnCurrentThread() const override { return true; }
-
- protected:
- ~FakeTaskRunner() override {}
-};
-
-class TestOutputSurface : public BrowserCompositorOutputSurface {
- public:
- TestOutputSurface(
- const scoped_refptr<cc::ContextProvider>& context_provider,
- int surface_id,
- IDMap<BrowserCompositorOutputSurface>* output_surface_map,
- const scoped_refptr<ui::CompositorVSyncManager>& vsync_manager)
- : BrowserCompositorOutputSurface(context_provider,
- surface_id,
- output_surface_map,
- vsync_manager) {}
-
- void SetFlip(bool flip) { capabilities_.flipped_output_surface = flip; }
-
- void SwapBuffers(cc::CompositorFrame* frame) override {}
-
-#if defined(OS_MACOSX)
- void OnSurfaceDisplayed() override {}
- void OnSurfaceRecycled() override {}
- bool ShouldNotShowFramesAfterRecycle() const override { return false; }
-#endif
-
- gfx::Size SurfaceSize() const override { return gfx::Size(256, 256); }
-};
-
-const gfx::Rect kSubRect = gfx::Rect(0, 0, 64, 64);
-const SkIRect kSkSubRect = SkIRect::MakeXYWH(0, 0, 64, 64);
-
-} // namespace
-
-class ReflectorImplTest : public testing::Test {
- public:
- void SetUp() override {
- bool enable_pixel_output = false;
- ui::ContextFactory* context_factory =
- ui::InitializeContextFactoryForTests(enable_pixel_output);
- ImageTransportFactory::InitializeForUnitTests(
- scoped_ptr<ImageTransportFactory>(
- new NoTransportImageTransportFactory));
- message_loop_.reset(new base::MessageLoop());
- proxy_ = message_loop_->message_loop_proxy();
- compositor_task_runner_ = new FakeTaskRunner();
- compositor_.reset(new ui::Compositor(gfx::kNullAcceleratedWidget,
- context_factory,
- compositor_task_runner_.get()));
- context_provider_ = cc::TestContextProvider::Create(
- cc::TestWebGraphicsContext3D::Create().Pass());
- output_surface_ =
- scoped_ptr<TestOutputSurface>(
- new TestOutputSurface(context_provider_, 1, &surface_map_,
- compositor_->vsync_manager())).Pass();
- CHECK(output_surface_->BindToClient(&output_surface_client_));
-
- mirroring_layer_.reset(new ui::Layer());
- gfx::Size size = output_surface_->SurfaceSize();
- mirroring_layer_->SetBounds(gfx::Rect(size.width(), size.height()));
-
- int32 surface_id = 1;
- reflector_ = new ReflectorImpl(compositor_.get(), mirroring_layer_.get(),
- &surface_map_, proxy_.get(), surface_id);
- }
-
- void TearDown() override {
- cc::TextureMailbox mailbox;
- scoped_ptr<cc::SingleReleaseCallback> release;
- if (mirroring_layer_->PrepareTextureMailbox(&mailbox, &release, false)) {
- release->Run(0, false);
- }
- compositor_.reset();
- ui::TerminateContextFactoryForTests();
- ImageTransportFactory::Terminate();
- }
-
- void Init() { base::RunLoop().RunUntilIdle(); }
-
- void UpdateTexture() {
- reflector_->UpdateSubBufferOnMainThread(output_surface_->SurfaceSize(),
- kSubRect);
- }
-
- protected:
- scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner_;
- IDMap<BrowserCompositorOutputSurface> surface_map_;
- scoped_refptr<cc::ContextProvider> context_provider_;
- cc::FakeOutputSurfaceClient output_surface_client_;
- scoped_ptr<base::MessageLoop> message_loop_;
- scoped_refptr<base::MessageLoopProxy> proxy_;
- scoped_ptr<ui::Compositor> compositor_;
- scoped_ptr<ui::Layer> mirroring_layer_;
- scoped_refptr<ReflectorImpl> reflector_;
- scoped_ptr<TestOutputSurface> output_surface_;
-};
-
-namespace {
-TEST_F(ReflectorImplTest, CheckNormalOutputSurface) {
- output_surface_->SetFlip(false);
- Init();
- UpdateTexture();
- EXPECT_TRUE(mirroring_layer_->TextureFlipped());
- EXPECT_EQ(SkRegion(SkIRect::MakeXYWH(
- 0, output_surface_->SurfaceSize().height() - kSubRect.height(),
- kSubRect.width(), kSubRect.height())),
- mirroring_layer_->damaged_region());
-}
-
-TEST_F(ReflectorImplTest, CheckInvertedOutputSurface) {
- output_surface_->SetFlip(true);
- Init();
- UpdateTexture();
- EXPECT_FALSE(mirroring_layer_->TextureFlipped());
- EXPECT_EQ(SkRegion(kSkSubRect), mirroring_layer_->damaged_region());
-}
-
-} // namespace
-} // namespace content
« no previous file with comments | « content/browser/compositor/reflector_impl.cc ('k') | content/content_tests.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698