| Index: cc/output/output_surface_unittest.cc
|
| diff --git a/cc/output/output_surface_unittest.cc b/cc/output/output_surface_unittest.cc
|
| index bebd2457275116d0fa4ae27025d84486118c9ea4..2025f307e10016dc65985d8ea287dc222c730b5b 100644
|
| --- a/cc/output/output_surface_unittest.cc
|
| +++ b/cc/output/output_surface_unittest.cc
|
| @@ -22,20 +22,25 @@ namespace {
|
|
|
| class TestOutputSurface : public OutputSurface {
|
| public:
|
| - explicit TestOutputSurface(scoped_refptr<ContextProvider> context_provider)
|
| - : OutputSurface(context_provider) {}
|
| + explicit TestOutputSurface(
|
| + std::unique_ptr<ContextProvider::Factory> compositor_context_factory)
|
| + : OutputSurface(std::move(compositor_context_factory)) {}
|
|
|
| - TestOutputSurface(scoped_refptr<ContextProvider> context_provider,
|
| - scoped_refptr<ContextProvider> worker_context_provider)
|
| - : OutputSurface(worker_context_provider) {}
|
| + TestOutputSurface(
|
| + std::unique_ptr<ContextProvider::Factory> compositor_context_factory,
|
| + scoped_refptr<ContextProvider> worker_context_provider)
|
| + : OutputSurface(std::move(compositor_context_factory),
|
| + std::move(worker_context_provider)) {}
|
|
|
| explicit TestOutputSurface(
|
| std::unique_ptr<SoftwareOutputDevice> software_device)
|
| : OutputSurface(std::move(software_device)) {}
|
|
|
| - TestOutputSurface(scoped_refptr<ContextProvider> context_provider,
|
| - std::unique_ptr<SoftwareOutputDevice> software_device)
|
| - : OutputSurface(context_provider, std::move(software_device)) {}
|
| + TestOutputSurface(
|
| + std::unique_ptr<ContextProvider::Factory> compositor_context_factory,
|
| + std::unique_ptr<SoftwareOutputDevice> software_device)
|
| + : OutputSurface(std::move(compositor_context_factory),
|
| + std::move(software_device)) {}
|
|
|
| void SwapBuffers(CompositorFrame* frame) override {
|
| client_->DidSwapBuffers();
|
| @@ -82,8 +87,8 @@ void TestSoftwareOutputDevice::EnsureBackbuffer() {
|
| }
|
|
|
| TEST(OutputSurfaceTest, ClientPointerIndicatesBindToClientSuccess) {
|
| - scoped_refptr<TestContextProvider> provider = TestContextProvider::Create();
|
| - TestOutputSurface output_surface(provider);
|
| + TestOutputSurface output_surface(
|
| + base::MakeUnique<TestContextProvider::Factory>());
|
| EXPECT_FALSE(output_surface.HasClient());
|
|
|
| FakeOutputSurfaceClient client;
|
| @@ -99,10 +104,9 @@ TEST(OutputSurfaceTest, ClientPointerIndicatesBindToClientSuccess) {
|
| }
|
|
|
| TEST(OutputSurfaceTest, ClientPointerIndicatesWorkerBindToClientSuccess) {
|
| - scoped_refptr<TestContextProvider> provider = TestContextProvider::Create();
|
| - scoped_refptr<TestContextProvider> worker_provider =
|
| - TestContextProvider::Create();
|
| - TestOutputSurface output_surface(provider, worker_provider);
|
| + TestOutputSurface output_surface(
|
| + base::MakeUnique<TestContextProvider::Factory>(),
|
| + TestContextProvider::Create());
|
| EXPECT_FALSE(output_surface.HasClient());
|
|
|
| FakeOutputSurfaceClient client;
|
| @@ -117,31 +121,12 @@ TEST(OutputSurfaceTest, ClientPointerIndicatesWorkerBindToClientSuccess) {
|
| EXPECT_TRUE(client.did_lose_output_surface_called());
|
| }
|
|
|
| +// TODO(danakj): Add a test for the worker context failing when we defer its
|
| +// creation too.
|
| TEST(OutputSurfaceTest, ClientPointerIndicatesBindToClientFailure) {
|
| - scoped_refptr<TestContextProvider> context_provider =
|
| - TestContextProvider::Create();
|
| -
|
| - // Lose the context so BindToClient fails.
|
| - context_provider->UnboundTestContext3d()->set_context_lost(true);
|
| -
|
| - TestOutputSurface output_surface(context_provider);
|
| - EXPECT_FALSE(output_surface.HasClient());
|
| -
|
| - FakeOutputSurfaceClient client;
|
| - EXPECT_FALSE(output_surface.BindToClient(&client));
|
| - EXPECT_FALSE(output_surface.HasClient());
|
| -}
|
| -
|
| -TEST(OutputSurfaceTest, ClientPointerIndicatesWorkerBindToClientFailure) {
|
| - scoped_refptr<TestContextProvider> context_provider =
|
| - TestContextProvider::Create();
|
| - scoped_refptr<TestContextProvider> worker_context_provider =
|
| - TestContextProvider::Create();
|
| -
|
| - // Lose the context so BindToClient fails.
|
| - worker_context_provider->UnboundTestContext3d()->set_context_lost(true);
|
| -
|
| - TestOutputSurface output_surface(context_provider, worker_context_provider);
|
| + TestOutputSurface output_surface(
|
| + base::MakeUnique<TestContextProvider::Factory>(
|
| + TestContextProvider::Factory::kFailCreate));
|
| EXPECT_FALSE(output_surface.HasClient());
|
|
|
| FakeOutputSurfaceClient client;
|
|
|