Chromium Code Reviews| Index: chromeos/components/tether/local_device_data_provider_unittest.cc |
| diff --git a/chromeos/components/tether/local_device_data_provider_unittest.cc b/chromeos/components/tether/local_device_data_provider_unittest.cc |
| index eb8f4f9f28938652c5d4182cfd29f6ec48cd6b69..70ac27394458ee5e05fe8a244e89996a8bc64cac 100644 |
| --- a/chromeos/components/tether/local_device_data_provider_unittest.cc |
| +++ b/chromeos/components/tether/local_device_data_provider_unittest.cc |
| @@ -10,8 +10,11 @@ |
| #include "base/logging.h" |
| #include "base/memory/ptr_util.h" |
| #include "components/cryptauth/cryptauth_device_manager.h" |
| +#include "components/cryptauth/cryptauth_enroller.h" |
| #include "components/cryptauth/cryptauth_enrollment_manager.h" |
| +#include "components/cryptauth/fake_cryptauth_gcm_manager.h" |
| #include "components/cryptauth/proto/cryptauth_api.pb.h" |
| +#include "components/cryptauth/secure_message_delegate.h" |
| #include "testing/gmock/include/gmock/gmock.h" |
| #include "testing/gtest/include/gtest/gtest.h" |
| @@ -23,16 +26,42 @@ namespace chromeos { |
| namespace tether { |
| namespace { |
| -const std::string kDefaultPublicKey = "publicKey"; |
| -const std::string kBeaconSeed1Data = "beaconSeed1Data"; |
| +const char kDefaultPublicKey[] = "publicKey"; |
| + |
| +const char kBeaconSeed1Data[] = "beaconSeed1Data"; |
| const int64_t kBeaconSeed1StartMs = 1000L; |
| const int64_t kBeaconSeed1EndMs = 2000L; |
| -const std::string kBeaconSeed2Data = "beaconSeed2Data"; |
| +const char kBeaconSeed2Data[] = "beaconSeed2Data"; |
| const int64_t kBeaconSeed2StartMs = 2000L; |
| const int64_t kBeaconSeed2EndMs = 3000L; |
| +class MockCryptAuthDeviceManager : public cryptauth::CryptAuthDeviceManager { |
| + public: |
| + MockCryptAuthDeviceManager() {} |
| + ~MockCryptAuthDeviceManager() override {} |
| + |
| + MOCK_CONST_METHOD0(GetSyncedDevices, |
| + std::vector<cryptauth::ExternalDeviceInfo>()); |
| +}; |
| + |
| +class MockCryptAuthEnrollmentManager |
| + : public cryptauth::CryptAuthEnrollmentManager { |
| + public: |
| + MockCryptAuthEnrollmentManager( |
| + cryptauth::FakeCryptAuthGCMManager* fake_cryptauth_gcm_manager) |
|
stevenjb
2017/04/10 20:26:59
explicit
Kyle Horimoto
2017/04/11 01:40:40
Done.
|
| + : cryptauth::CryptAuthEnrollmentManager(nullptr, |
|
stevenjb
2017/04/10 20:26:59
comment what each of these are e.g.
nullptr /* clo
Kyle Horimoto
2017/04/11 01:40:40
Done.
|
| + nullptr, |
| + nullptr, |
| + cryptauth::GcmDeviceInfo(), |
| + fake_cryptauth_gcm_manager, |
| + nullptr) {} |
| + ~MockCryptAuthEnrollmentManager() override {} |
| + |
| + MOCK_CONST_METHOD0(GetUserPublicKey, std::string()); |
| +}; |
| + |
| cryptauth::BeaconSeed CreateBeaconSeed(const std::string& data, |
| int64_t start_ms, |
| int64_t end_ms) { |
| @@ -42,21 +71,11 @@ cryptauth::BeaconSeed CreateBeaconSeed(const std::string& data, |
| seed.set_end_time_millis(end_ms); |
| return seed; |
| } |
| + |
| } // namespace |
| class LocalDeviceDataProviderTest : public testing::Test { |
| protected: |
| - class MockProviderDelegate |
| - : public LocalDeviceDataProvider::LocalDeviceDataProviderDelegate { |
| - public: |
| - MockProviderDelegate() {} |
| - ~MockProviderDelegate() override {} |
| - |
| - MOCK_CONST_METHOD0(GetUserPublicKey, std::string()); |
| - MOCK_CONST_METHOD0(GetSyncedDevices, |
| - std::vector<cryptauth::ExternalDeviceInfo>()); |
| - }; |
| - |
| LocalDeviceDataProviderTest() { |
| fake_beacon_seeds_.push_back(CreateBeaconSeed( |
| kBeaconSeed1Data, kBeaconSeed1StartMs, kBeaconSeed1EndMs)); |
| @@ -105,26 +124,37 @@ class LocalDeviceDataProviderTest : public testing::Test { |
| } |
| void SetUp() override { |
| - mock_delegate_ = new NiceMock<MockProviderDelegate>(); |
| - |
| - provider_ = base::WrapUnique( |
| - new LocalDeviceDataProvider(base::WrapUnique(mock_delegate_))); |
| + mock_device_manager_ = |
| + base::WrapUnique(new NiceMock<MockCryptAuthDeviceManager>()); |
| + fake_cryptauth_gcm_manager_ = |
| + base::MakeUnique<cryptauth::FakeCryptAuthGCMManager>("registrationId"); |
| + mock_enrollment_manager_ = |
| + base::WrapUnique(new NiceMock<MockCryptAuthEnrollmentManager>( |
| + fake_cryptauth_gcm_manager_.get())); |
| + |
| + provider_ = base::WrapUnique(new LocalDeviceDataProvider( |
| + mock_device_manager_.get(), mock_enrollment_manager_.get())); |
| } |
| - std::unique_ptr<LocalDeviceDataProvider> provider_; |
| - NiceMock<MockProviderDelegate>* mock_delegate_; |
| - |
| std::vector<cryptauth::BeaconSeed> fake_beacon_seeds_; |
| std::vector<cryptauth::ExternalDeviceInfo> fake_synced_devices_; |
| + std::unique_ptr<cryptauth::FakeCryptAuthGCMManager> |
| + fake_cryptauth_gcm_manager_; |
| + std::unique_ptr<NiceMock<MockCryptAuthDeviceManager>> mock_device_manager_; |
| + std::unique_ptr<NiceMock<MockCryptAuthEnrollmentManager>> |
| + mock_enrollment_manager_; |
| + |
| + std::unique_ptr<LocalDeviceDataProvider> provider_; |
| + |
| private: |
| DISALLOW_COPY_AND_ASSIGN(LocalDeviceDataProviderTest); |
| }; |
| TEST_F(LocalDeviceDataProviderTest, TestGetLocalDeviceData_NoPublicKey) { |
| - ON_CALL(*mock_delegate_, GetUserPublicKey()) |
| + ON_CALL(*mock_enrollment_manager_, GetUserPublicKey()) |
| .WillByDefault(Return(std::string())); |
| - ON_CALL(*mock_delegate_, GetSyncedDevices()) |
| + ON_CALL(*mock_device_manager_, GetSyncedDevices()) |
| .WillByDefault(Return(fake_synced_devices_)); |
| std::string public_key; |
| @@ -134,9 +164,9 @@ TEST_F(LocalDeviceDataProviderTest, TestGetLocalDeviceData_NoPublicKey) { |
| } |
| TEST_F(LocalDeviceDataProviderTest, TestGetLocalDeviceData_NoSyncedDevices) { |
| - ON_CALL(*mock_delegate_, GetUserPublicKey()) |
| + ON_CALL(*mock_enrollment_manager_, GetUserPublicKey()) |
| .WillByDefault(Return(kDefaultPublicKey)); |
| - ON_CALL(*mock_delegate_, GetSyncedDevices()) |
| + ON_CALL(*mock_device_manager_, GetSyncedDevices()) |
| .WillByDefault(Return(std::vector<cryptauth::ExternalDeviceInfo>())); |
| std::string public_key; |
| @@ -147,9 +177,9 @@ TEST_F(LocalDeviceDataProviderTest, TestGetLocalDeviceData_NoSyncedDevices) { |
| TEST_F(LocalDeviceDataProviderTest, |
| TestGetLocalDeviceData_NoSyncedDeviceMatchingPublicKey) { |
| - ON_CALL(*mock_delegate_, GetUserPublicKey()) |
| + ON_CALL(*mock_enrollment_manager_, GetUserPublicKey()) |
| .WillByDefault(Return(kDefaultPublicKey)); |
| - ON_CALL(*mock_delegate_, GetSyncedDevices()) |
| + ON_CALL(*mock_device_manager_, GetSyncedDevices()) |
| .WillByDefault(Return(std::vector<cryptauth::ExternalDeviceInfo>{ |
| fake_synced_devices_[0], fake_synced_devices_[1], |
| fake_synced_devices_[2], fake_synced_devices_[3]})); |
| @@ -162,9 +192,9 @@ TEST_F(LocalDeviceDataProviderTest, |
| TEST_F(LocalDeviceDataProviderTest, |
| TestGetLocalDeviceData_SyncedDeviceIncludesPublicKeyButNoBeaconSeeds) { |
| - ON_CALL(*mock_delegate_, GetUserPublicKey()) |
| + ON_CALL(*mock_enrollment_manager_, GetUserPublicKey()) |
| .WillByDefault(Return(kDefaultPublicKey)); |
| - ON_CALL(*mock_delegate_, GetSyncedDevices()) |
| + ON_CALL(*mock_device_manager_, GetSyncedDevices()) |
| .WillByDefault(Return(std::vector<cryptauth::ExternalDeviceInfo>{ |
| fake_synced_devices_[4], |
| })); |
| @@ -176,9 +206,9 @@ TEST_F(LocalDeviceDataProviderTest, |
| } |
| TEST_F(LocalDeviceDataProviderTest, TestGetLocalDeviceData_Success) { |
| - ON_CALL(*mock_delegate_, GetUserPublicKey()) |
| + ON_CALL(*mock_enrollment_manager_, GetUserPublicKey()) |
| .WillByDefault(Return(kDefaultPublicKey)); |
| - ON_CALL(*mock_delegate_, GetSyncedDevices()) |
| + ON_CALL(*mock_device_manager_, GetSyncedDevices()) |
| .WillByDefault(Return(fake_synced_devices_)); |
| std::string public_key; |