| // 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. |
| |
| #ifndef REMOTING_TEST_FAKE_REFRESH_TOKEN_STORE_H_ |
| #define REMOTING_TEST_FAKE_REFRESH_TOKEN_STORE_H_ |
| |
| #include "base/macros.h" |
| #include "remoting/test/refresh_token_store.h" |
| |
| namespace remoting { |
| namespace test { |
| |
| // Stubs out the file API and returns fake data so we can remove |
| // file system dependencies when testing the TestDriverEnvironment. |
| class FakeRefreshTokenStore : public RefreshTokenStore { |
| public: |
| FakeRefreshTokenStore(); |
| ~FakeRefreshTokenStore() override; |
| |
| // RefreshTokenStore interface. |
| std::string FetchRefreshToken() override; |
| bool StoreRefreshToken(const std::string& refresh_token) override; |
| |
| bool refresh_token_write_attempted() const { |
| return refresh_token_write_attempted_; |
| } |
| |
| const std::string& stored_refresh_token_value() const { |
| return stored_refresh_token_value_; |
| } |
| |
| void set_refresh_token_value(const std::string& new_token_value) { |
| refresh_token_value_ = new_token_value; |
| } |
| |
| void set_refresh_token_write_succeeded(bool write_succeeded) { |
| refresh_token_write_succeeded_ = write_succeeded; |
| } |
| |
| private: |
| // Control members used to return specific data to the caller. |
| std::string refresh_token_value_; |
| bool refresh_token_write_succeeded_; |
| |
| // Verification members to observe the value of the data being written. |
| bool refresh_token_write_attempted_; |
| std::string stored_refresh_token_value_; |
| |
| DISALLOW_COPY_AND_ASSIGN(FakeRefreshTokenStore); |
| }; |
| |
| } // namespace test |
| } // namespace remoting |
| |
| #endif // REMOTING_TEST_FAKE_REFRESH_TOKEN_STORE_H_ |