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

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

Issue 2511273002: Decouple BrowserCompositorOutputSurface from BeginFrameSource. (Closed)
Patch Set: Bring back GpuBrowserCompositorOutputSurface destructor Created 4 years 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: content/browser/compositor/software_browser_compositor_output_surface_unittest.cc
diff --git a/content/browser/compositor/software_browser_compositor_output_surface_unittest.cc b/content/browser/compositor/software_browser_compositor_output_surface_unittest.cc
index a91c8326a45bf704bcd8a837702513aef70afdc8..5ec01a82bde26d3fffc399c2031ffd3be86c07b5 100644
--- a/content/browser/compositor/software_browser_compositor_output_surface_unittest.cc
+++ b/content/browser/compositor/software_browser_compositor_output_surface_unittest.cc
@@ -72,6 +72,9 @@ class SoftwareBrowserCompositorOutputSurfaceTest : public testing::Test {
void SetUp() override;
void TearDown() override;
+ void UpdateVSyncParameters(base::TimeTicks timebase,
+ base::TimeDelta interval);
+
std::unique_ptr<content::BrowserCompositorOutputSurface> CreateSurface(
std::unique_ptr<cc::SoftwareOutputDevice> device);
@@ -84,6 +87,7 @@ class SoftwareBrowserCompositorOutputSurfaceTest : public testing::Test {
base::TestMessageLoop message_loop_;
cc::DelayBasedBeginFrameSource begin_frame_source_;
std::unique_ptr<ui::Compositor> compositor_;
+ int update_vsync_parameters_call_count_ = 0;
private:
DISALLOW_COPY_AND_ASSIGN(SoftwareBrowserCompositorOutputSurfaceTest);
@@ -109,10 +113,19 @@ std::unique_ptr<content::BrowserCompositorOutputSurface>
SoftwareBrowserCompositorOutputSurfaceTest::CreateSurface(
std::unique_ptr<cc::SoftwareOutputDevice> device) {
return base::MakeUnique<content::SoftwareBrowserCompositorOutputSurface>(
- std::move(device), compositor_->vsync_manager(), &begin_frame_source_,
+ std::move(device),
+ base::Bind(
+ &SoftwareBrowserCompositorOutputSurfaceTest::UpdateVSyncParameters,
+ base::Unretained(this)),
base::ThreadTaskRunnerHandle::Get());
}
+void SoftwareBrowserCompositorOutputSurfaceTest::UpdateVSyncParameters(
+ base::TimeTicks timebase,
+ base::TimeDelta interval) {
+ update_vsync_parameters_call_count_++;
+}
+
TEST_F(SoftwareBrowserCompositorOutputSurfaceTest, NoVSyncProvider) {
cc::FakeOutputSurfaceClient output_surface_client;
std::unique_ptr<cc::SoftwareOutputDevice> software_device(
@@ -122,6 +135,7 @@ TEST_F(SoftwareBrowserCompositorOutputSurfaceTest, NoVSyncProvider) {
output_surface_->SwapBuffers(cc::OutputSurfaceFrame());
EXPECT_EQ(NULL, output_surface_->software_device()->GetVSyncProvider());
+ EXPECT_EQ(0, update_vsync_parameters_call_count_);
}
TEST_F(SoftwareBrowserCompositorOutputSurfaceTest, VSyncProviderUpdates) {
@@ -137,4 +151,5 @@ TEST_F(SoftwareBrowserCompositorOutputSurfaceTest, VSyncProviderUpdates) {
output_surface_->SwapBuffers(cc::OutputSurfaceFrame());
EXPECT_EQ(1, vsync_provider->call_count());
+ EXPECT_EQ(1, update_vsync_parameters_call_count_);
}

Powered by Google App Engine
This is Rietveld 408576698