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

Unified Diff: ui/gfx/ozone/impl/hardware_display_controller_unittest.cc

Issue 62953003: Support removal of DRI platform (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix use_ozone=0 Created 7 years, 1 month 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 | « ui/gfx/ozone/impl/hardware_display_controller.cc ('k') | ui/ozone/platform/dri/ozone_platform_dri.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/gfx/ozone/impl/hardware_display_controller_unittest.cc
diff --git a/ui/gfx/ozone/impl/hardware_display_controller_unittest.cc b/ui/gfx/ozone/impl/hardware_display_controller_unittest.cc
deleted file mode 100644
index d0be7e6b354112d7cbcdae87271192a427606139..0000000000000000000000000000000000000000
--- a/ui/gfx/ozone/impl/hardware_display_controller_unittest.cc
+++ /dev/null
@@ -1,301 +0,0 @@
-// Copyright 2013 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 "testing/gtest/include/gtest/gtest.h"
-#include "ui/gfx/ozone/impl/dri_skbitmap.h"
-#include "ui/gfx/ozone/impl/dri_surface.h"
-#include "ui/gfx/ozone/impl/dri_wrapper.h"
-#include "ui/gfx/ozone/impl/hardware_display_controller.h"
-
-namespace {
-
-// Create a basic mode for a 6x4 screen.
-const drmModeModeInfo kDefaultMode =
- {0, 6, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, {'\0'}};
-
-// Mock file descriptor ID.
-const int kFd = 3;
-
-// Mock connector ID.
-const uint32_t kConnectorId = 1;
-
-// Mock CRTC ID.
-const uint32_t kCrtcId = 1;
-
-const uint32_t kDPMSPropertyId = 1;
-
-// The real DriWrapper makes actual DRM calls which we can't use in unit tests.
-class MockDriWrapper : public gfx::DriWrapper {
- public:
- MockDriWrapper(int fd) : DriWrapper(""),
- get_crtc_call_count_(0),
- free_crtc_call_count_(0),
- restore_crtc_call_count_(0),
- add_framebuffer_call_count_(0),
- remove_framebuffer_call_count_(0),
- set_crtc_expectation_(true),
- add_framebuffer_expectation_(true),
- page_flip_expectation_(true) {
- fd_ = fd;
- }
-
- virtual ~MockDriWrapper() { fd_ = -1; }
-
- virtual drmModeCrtc* GetCrtc(uint32_t crtc_id) OVERRIDE {
- get_crtc_call_count_++;
- return new drmModeCrtc;
- }
-
- virtual void FreeCrtc(drmModeCrtc* crtc) OVERRIDE {
- free_crtc_call_count_++;
- delete crtc;
- }
-
- virtual bool SetCrtc(uint32_t crtc_id,
- uint32_t framebuffer,
- uint32_t* connectors,
- drmModeModeInfo* mode) OVERRIDE {
- return set_crtc_expectation_;
- }
-
- virtual bool SetCrtc(drmModeCrtc* crtc, uint32_t* connectors) OVERRIDE {
- restore_crtc_call_count_++;
- return true;
- }
-
- virtual bool AddFramebuffer(const drmModeModeInfo& mode,
- uint8_t depth,
- uint8_t bpp,
- uint32_t stride,
- uint32_t handle,
- uint32_t* framebuffer) OVERRIDE {
- add_framebuffer_call_count_++;
- return add_framebuffer_expectation_;
- }
-
- virtual bool RemoveFramebuffer(uint32_t framebuffer) OVERRIDE {
- remove_framebuffer_call_count_++;
- return true;
- }
-
- virtual bool PageFlip(uint32_t crtc_id,
- uint32_t framebuffer,
- void* data) OVERRIDE {
- return page_flip_expectation_;
- }
-
- virtual bool ConnectorSetProperty(uint32_t connector_id,
- uint32_t property_id,
- uint64_t value) OVERRIDE { return true; }
-
- int get_get_crtc_call_count() const {
- return get_crtc_call_count_;
- }
-
- int get_free_crtc_call_count() const {
- return free_crtc_call_count_;
- }
-
- int get_restore_crtc_call_count() const {
- return restore_crtc_call_count_;
- }
-
- int get_add_framebuffer_call_count() const {
- return add_framebuffer_call_count_;
- }
-
- int get_remove_framebuffer_call_count() const {
- return remove_framebuffer_call_count_;
- }
-
- void set_set_crtc_expectation(bool state) {
- set_crtc_expectation_ = state;
- }
-
- void set_add_framebuffer_expectation(bool state) {
- add_framebuffer_expectation_ = state;
- }
-
- void set_page_flip_expectation(bool state) {
- page_flip_expectation_ = state;
- }
-
- private:
- int get_crtc_call_count_;
- int free_crtc_call_count_;
- int restore_crtc_call_count_;
- int add_framebuffer_call_count_;
- int remove_framebuffer_call_count_;
-
- bool set_crtc_expectation_;
- bool add_framebuffer_expectation_;
- bool page_flip_expectation_;
-
- DISALLOW_COPY_AND_ASSIGN(MockDriWrapper);
-};
-
-class MockDriSkBitmap : public gfx::DriSkBitmap {
- public:
- MockDriSkBitmap(int fd) : DriSkBitmap(fd) {}
- virtual ~MockDriSkBitmap() {}
-
- virtual bool Initialize() OVERRIDE {
- return allocPixels();
- }
- private:
- DISALLOW_COPY_AND_ASSIGN(MockDriSkBitmap);
-};
-
-class MockDriSurface : public gfx::DriSurface {
- public:
- MockDriSurface(gfx::HardwareDisplayController* controller)
- : DriSurface(controller) {}
- virtual ~MockDriSurface() {}
-
- private:
- virtual gfx::DriSkBitmap* CreateBuffer() OVERRIDE {
- return new MockDriSkBitmap(kFd);
- }
- DISALLOW_COPY_AND_ASSIGN(MockDriSurface);
-};
-
-} // namespace
-
-class HardwareDisplayControllerTest : public testing::Test {
- public:
- HardwareDisplayControllerTest() {}
- virtual ~HardwareDisplayControllerTest() {}
-
- virtual void SetUp() OVERRIDE;
- virtual void TearDown() OVERRIDE;
- protected:
- scoped_ptr<gfx::HardwareDisplayController> controller_;
- scoped_ptr<MockDriWrapper> drm_;
-
- private:
- DISALLOW_COPY_AND_ASSIGN(HardwareDisplayControllerTest);
-};
-
-void HardwareDisplayControllerTest::SetUp() {
- controller_.reset(new gfx::HardwareDisplayController());
- drm_.reset(new MockDriWrapper(kFd));
-}
-
-void HardwareDisplayControllerTest::TearDown() {
- controller_.reset();
- drm_.reset();
-}
-
-TEST_F(HardwareDisplayControllerTest, CheckInitialState) {
- EXPECT_EQ(gfx::HardwareDisplayController::UNASSOCIATED,
- controller_->get_state());
-}
-
-TEST_F(HardwareDisplayControllerTest,
- CheckStateAfterControllerIsInitialized) {
- controller_->SetControllerInfo(
- drm_.get(), kConnectorId, kCrtcId, kDPMSPropertyId, kDefaultMode);
-
- EXPECT_EQ(1, drm_->get_get_crtc_call_count());
- EXPECT_EQ(gfx::HardwareDisplayController::UNINITIALIZED,
- controller_->get_state());
-}
-
-TEST_F(HardwareDisplayControllerTest, CheckStateAfterSurfaceIsBound) {
- controller_->SetControllerInfo(
- drm_.get(), kConnectorId, kCrtcId, kDPMSPropertyId, kDefaultMode);
- scoped_ptr<gfx::DriSurface> surface(
- new MockDriSurface(controller_.get()));
-
- EXPECT_TRUE(surface->Initialize());
- EXPECT_TRUE(controller_->BindSurfaceToController(surface.Pass()));
-
- EXPECT_EQ(2, drm_->get_add_framebuffer_call_count());
- EXPECT_EQ(gfx::HardwareDisplayController::SURFACE_INITIALIZED,
- controller_->get_state());
-}
-
-TEST_F(HardwareDisplayControllerTest, CheckStateIfBindingFails) {
- drm_->set_add_framebuffer_expectation(false);
-
- controller_->SetControllerInfo(
- drm_.get(), kConnectorId, kCrtcId, kDPMSPropertyId, kDefaultMode);
- scoped_ptr<gfx::DriSurface> surface(
- new MockDriSurface(controller_.get()));
-
- EXPECT_TRUE(surface->Initialize());
- EXPECT_FALSE(controller_->BindSurfaceToController(surface.Pass()));
-
- EXPECT_EQ(1, drm_->get_add_framebuffer_call_count());
- EXPECT_EQ(gfx::HardwareDisplayController::FAILED,
- controller_->get_state());
-}
-
-TEST_F(HardwareDisplayControllerTest, CheckStateAfterPageFlip) {
- controller_->SetControllerInfo(
- drm_.get(), kConnectorId, kCrtcId, kDPMSPropertyId, kDefaultMode);
- scoped_ptr<gfx::DriSurface> surface(
- new MockDriSurface(controller_.get()));
-
- EXPECT_TRUE(surface->Initialize());
- EXPECT_TRUE(controller_->BindSurfaceToController(surface.Pass()));
-
- controller_->SchedulePageFlip();
-
- EXPECT_EQ(gfx::HardwareDisplayController::INITIALIZED,
- controller_->get_state());
-}
-
-TEST_F(HardwareDisplayControllerTest, CheckStateIfModesetFails) {
- drm_->set_set_crtc_expectation(false);
-
- controller_->SetControllerInfo(
- drm_.get(), kConnectorId, kCrtcId, kDPMSPropertyId, kDefaultMode);
- scoped_ptr<gfx::DriSurface> surface(
- new MockDriSurface(controller_.get()));
-
- EXPECT_TRUE(surface->Initialize());
- EXPECT_TRUE(controller_->BindSurfaceToController(surface.Pass()));
-
- controller_->SchedulePageFlip();
-
- EXPECT_EQ(gfx::HardwareDisplayController::FAILED,
- controller_->get_state());
-}
-
-TEST_F(HardwareDisplayControllerTest, CheckStateIfPageFlipFails) {
- drm_->set_page_flip_expectation(false);
-
- controller_->SetControllerInfo(
- drm_.get(), kConnectorId, kCrtcId, kDPMSPropertyId, kDefaultMode);
- scoped_ptr<gfx::DriSurface> surface(
- new MockDriSurface(controller_.get()));
-
- EXPECT_TRUE(surface->Initialize());
- EXPECT_TRUE(controller_->BindSurfaceToController(surface.Pass()));
-
- controller_->SchedulePageFlip();
-
- EXPECT_EQ(gfx::HardwareDisplayController::FAILED,
- controller_->get_state());
-}
-
-TEST_F(HardwareDisplayControllerTest, CheckProperDestruction) {
- controller_->SetControllerInfo(
- drm_.get(), kConnectorId, kCrtcId, kDPMSPropertyId, kDefaultMode);
- scoped_ptr<gfx::DriSurface> surface(
- new MockDriSurface(controller_.get()));
-
- EXPECT_TRUE(surface->Initialize());
- EXPECT_TRUE(controller_->BindSurfaceToController(surface.Pass()));
-
- EXPECT_EQ(gfx::HardwareDisplayController::SURFACE_INITIALIZED,
- controller_->get_state());
-
- controller_.reset();
-
- EXPECT_EQ(2, drm_->get_remove_framebuffer_call_count());
- EXPECT_EQ(1, drm_->get_restore_crtc_call_count());
- EXPECT_EQ(1, drm_->get_free_crtc_call_count());
-}
« no previous file with comments | « ui/gfx/ozone/impl/hardware_display_controller.cc ('k') | ui/ozone/platform/dri/ozone_platform_dri.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698