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

Unified Diff: chrome/browser/policy/device_token_fetcher_unittest.cc

Issue 7298012: Consolidate data storage and notifications in the cloud policy subsystem (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: " Created 9 years, 5 months 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: chrome/browser/policy/device_token_fetcher_unittest.cc
diff --git a/chrome/browser/policy/device_token_fetcher_unittest.cc b/chrome/browser/policy/device_token_fetcher_unittest.cc
index 0f9826adb4d8d55e396ac1a4d7adaa27c32824a1..65c20a56424653587945b1b809e67a9ab464f225 100644
--- a/chrome/browser/policy/device_token_fetcher_unittest.cc
+++ b/chrome/browser/policy/device_token_fetcher_unittest.cc
@@ -8,6 +8,7 @@
#include "base/message_loop.h"
#include "base/scoped_temp_dir.h"
#include "chrome/browser/net/gaia/token_service.h"
Joao da Silva 2011/07/06 16:45:14 Nit: token_service.h not used
gfeher 2011/07/07 13:51:00 Done.
+#include "chrome/browser/policy/cloud_policy_data.h"
#include "chrome/browser/policy/device_management_service.h"
Joao da Silva 2011/07/06 16:45:14 Nit: device_management_service.h not used
gfeher 2011/07/07 13:51:00 Done.
#include "chrome/browser/policy/logging_work_scheduler.h"
#include "chrome/browser/policy/mock_device_management_backend.h"
@@ -28,12 +29,14 @@ const char kTestToken[] = "device_token_fetcher_test_auth_token";
using testing::_;
using testing::Mock;
-class MockTokenAvailableObserver : public DeviceTokenFetcher::Observer {
+class MockTokenAvailableObserver : public CloudPolicyData::Observer {
public:
MockTokenAvailableObserver() {}
virtual ~MockTokenAvailableObserver() {}
- MOCK_METHOD0(OnDeviceTokenAvailable, void());
+ MOCK_METHOD0(OnDeviceTokenChanged, void());
+ MOCK_METHOD0(OnCredentialsChanged, void());
+ MOCK_METHOD0(OnPolicyDataGoingAway, void());
private:
DISALLOW_COPY_AND_ASSIGN(MockTokenAvailableObserver);
@@ -51,16 +54,27 @@ class DeviceTokenFetcherTest : public testing::Test {
cache_.reset(new UserPolicyCache(
temp_user_data_dir_.path().AppendASCII("DeviceTokenFetcherTest")));
service_.set_backend(&backend_);
+ cloud_policy_data_.reset(CloudPolicyData::CreateForUserPolicies());
+ cloud_policy_data_->AddObserver(&observer_);
}
virtual void TearDown() {
loop_.RunAllPending();
+ cloud_policy_data_->RemoveObserver(&observer_);
+ }
+
+ void FetchToken(DeviceTokenFetcher* fetcher) {
+ cloud_policy_data_->SetupForTesting("", "fake_device_id", "fake_user_name",
+ "fake_auth_token", true);
+ fetcher->FetchToken();
}
MessageLoop loop_;
MockDeviceManagementBackend backend_;
MockDeviceManagementService service_;
scoped_ptr<CloudPolicyCacheBase> cache_;
+ scoped_ptr<CloudPolicyData> cloud_policy_data_;
+ MockTokenAvailableObserver observer_;
PolicyNotifier notifier_;
ScopedTempDir temp_user_data_dir_;
@@ -73,32 +87,26 @@ TEST_F(DeviceTokenFetcherTest, FetchToken) {
testing::InSequence s;
EXPECT_CALL(backend_, ProcessRegisterRequest(_, _, _, _)).WillOnce(
MockDeviceManagementBackendSucceedRegister());
- DeviceTokenFetcher fetcher(&service_, cache_.get(), &notifier_);
- MockTokenAvailableObserver observer;
- EXPECT_CALL(observer, OnDeviceTokenAvailable());
- fetcher.AddObserver(&observer);
- EXPECT_EQ("", fetcher.GetDeviceToken());
- fetcher.FetchToken("fake_auth_token", "fake_device_id",
- em::DeviceRegisterRequest::USER,
- "fake_machine_id", "fake_machine_model");
+ DeviceTokenFetcher fetcher(&service_, cache_.get(), cloud_policy_data_.get(),
+ &notifier_);
+ EXPECT_CALL(observer_, OnDeviceTokenChanged());
+ EXPECT_EQ("", cloud_policy_data_->device_token());
+ FetchToken(&fetcher);
loop_.RunAllPending();
- Mock::VerifyAndClearExpectations(&observer);
- std::string token = fetcher.GetDeviceToken();
+ Mock::VerifyAndClearExpectations(&observer_);
+ std::string token = cloud_policy_data_->device_token();
EXPECT_NE("", token);
// Calling FetchToken() again should result in a new token being fetched.
EXPECT_CALL(backend_, ProcessRegisterRequest(_, _, _, _)).WillOnce(
MockDeviceManagementBackendSucceedRegister());
- EXPECT_CALL(observer, OnDeviceTokenAvailable());
- fetcher.FetchToken("fake_auth_token", "fake_device_id",
- em::DeviceRegisterRequest::USER,
- "fake_machine_id", "fake_machine_model");
+ EXPECT_CALL(observer_, OnDeviceTokenChanged());
+ FetchToken(&fetcher);
loop_.RunAllPending();
- Mock::VerifyAndClearExpectations(&observer);
- std::string token2 = fetcher.GetDeviceToken();
+ Mock::VerifyAndClearExpectations(&observer_);
+ std::string token2 = cloud_policy_data_->device_token();
EXPECT_NE("", token2);
EXPECT_NE(token, token2);
- fetcher.RemoveObserver(&observer);
}
TEST_F(DeviceTokenFetcherTest, RetryOnError) {
@@ -107,18 +115,13 @@ TEST_F(DeviceTokenFetcherTest, RetryOnError) {
MockDeviceManagementBackendFailRegister(
DeviceManagementBackend::kErrorRequestFailed)).WillOnce(
MockDeviceManagementBackendSucceedRegister());
- DeviceTokenFetcher fetcher(&service_, cache_.get(), &notifier_,
- new DummyWorkScheduler);
- MockTokenAvailableObserver observer;
- EXPECT_CALL(observer, OnDeviceTokenAvailable());
- fetcher.AddObserver(&observer);
- fetcher.FetchToken("fake_auth_token", "fake_device_id",
- em::DeviceRegisterRequest::USER,
- "fake_machine_id", "fake_machine_model");
+ DeviceTokenFetcher fetcher(&service_, cache_.get(), cloud_policy_data_.get(),
+ &notifier_, new DummyWorkScheduler);
+ EXPECT_CALL(observer_, OnDeviceTokenChanged());
+ FetchToken(&fetcher);
loop_.RunAllPending();
- Mock::VerifyAndClearExpectations(&observer);
- EXPECT_NE("", fetcher.GetDeviceToken());
- fetcher.RemoveObserver(&observer);
+ Mock::VerifyAndClearExpectations(&observer_);
+ EXPECT_NE("", cloud_policy_data_->device_token());
}
TEST_F(DeviceTokenFetcherTest, UnmanagedDevice) {
@@ -126,18 +129,14 @@ TEST_F(DeviceTokenFetcherTest, UnmanagedDevice) {
MockDeviceManagementBackendFailRegister(
DeviceManagementBackend::kErrorServiceManagementNotSupported));
EXPECT_FALSE(cache_->is_unmanaged());
- DeviceTokenFetcher fetcher(&service_, cache_.get(), &notifier_);
- MockTokenAvailableObserver observer;
- EXPECT_CALL(observer, OnDeviceTokenAvailable()).Times(0);
- fetcher.AddObserver(&observer);
- fetcher.FetchToken("fake_auth_token", "fake_device_id",
- em::DeviceRegisterRequest::USER,
- "fake_machine_id", "fake_machine_model");
+ DeviceTokenFetcher fetcher(&service_, cache_.get(), cloud_policy_data_.get(),
+ &notifier_);
+ EXPECT_CALL(observer_, OnDeviceTokenChanged()).Times(0);
+ FetchToken(&fetcher);
loop_.RunAllPending();
- Mock::VerifyAndClearExpectations(&observer);
- EXPECT_EQ("", fetcher.GetDeviceToken());
+ Mock::VerifyAndClearExpectations(&observer_);
+ EXPECT_EQ("", cloud_policy_data_->device_token());
EXPECT_TRUE(cache_->is_unmanaged());
- fetcher.RemoveObserver(&observer);
}
} // namespace policy

Powered by Google App Engine
This is Rietveld 408576698