| Index: cc/output/gl_renderer_unittest.cc
|
| diff --git a/cc/output/gl_renderer_unittest.cc b/cc/output/gl_renderer_unittest.cc
|
| index f23ab4f3630823968cac9636716e5cad8b5ed000..d5556f13d7ba7c9dd541f97e4fceb2092c69c7bb 100644
|
| --- a/cc/output/gl_renderer_unittest.cc
|
| +++ b/cc/output/gl_renderer_unittest.cc
|
| @@ -2098,11 +2098,25 @@ class GLRendererWithMockContextTest : public ::testing::Test {
|
|
|
| class MockContextSupport : public TestContextSupport {
|
| public:
|
| + using VisibilityToken = std::unique_ptr<ScopedVisibility>;
|
| MockContextSupport() {}
|
| - MOCK_METHOD1(SetAggressivelyFreeResources,
|
| - void(bool aggressively_free_resources));
|
| - MOCK_METHOD2(SetClientVisible, void(int client_id, bool is_visible));
|
| + MOCK_METHOD0(ClientBecameVisible, VisibilityToken());
|
| + MOCK_METHOD1(ClientBecameNotVisible_,
|
| + void(VisibilityToken& visibility)); // NOLINT
|
| MOCK_CONST_METHOD0(AnyClientsVisible, bool());
|
| +
|
| + // Wrapper to allow mocking w/ move-only type.
|
| + void ClientBecameNotVisible(VisibilityToken visibility) override {
|
| + ClientBecameNotVisible_(visibility);
|
| + }
|
| +
|
| + // Wrappers to allow forwarding to super class implementation.
|
| + void SuperClientBecameNotVisible(VisibilityToken& visibility) { // NOLINT
|
| + TestContextSupport::ClientBecameNotVisible(std::move(visibility));
|
| + }
|
| + VisibilityToken SuperClientBecameVisible() {
|
| + return TestContextSupport::ClientBecameVisible();
|
| + }
|
| };
|
|
|
| void SetUp() override {
|
| @@ -2133,18 +2147,21 @@ TEST_F(GLRendererWithMockContextTest,
|
| // Ensure our expectations run in order.
|
| ::testing::InSequence s;
|
|
|
| - EXPECT_CALL(*context_support_ptr_, SetClientVisible(0, true));
|
| + EXPECT_CALL(*context_support_ptr_, ClientBecameVisible())
|
| + .WillOnce(::testing::Invoke(
|
| + context_support_ptr_, &MockContextSupport::SuperClientBecameVisible));
|
| EXPECT_CALL(*context_support_ptr_, AnyClientsVisible())
|
| .WillOnce(Return(true));
|
| - EXPECT_CALL(*context_support_ptr_, SetAggressivelyFreeResources(false));
|
| renderer_->SetVisible(true);
|
| Mock::VerifyAndClearExpectations(context_support_ptr_);
|
|
|
| - EXPECT_CALL(*context_support_ptr_, SetClientVisible(0, false));
|
| + EXPECT_CALL(*context_support_ptr_, ClientBecameNotVisible_(_))
|
| + .WillOnce(
|
| + ::testing::Invoke(context_support_ptr_,
|
| + &MockContextSupport::SuperClientBecameNotVisible));
|
| EXPECT_CALL(*context_support_ptr_, AnyClientsVisible())
|
| .WillOnce(Return(false));
|
| EXPECT_CALL(*context_provider_, DeleteCachedResources());
|
| - EXPECT_CALL(*context_support_ptr_, SetAggressivelyFreeResources(true));
|
| renderer_->SetVisible(false);
|
| Mock::VerifyAndClearExpectations(context_support_ptr_);
|
| }
|
|
|