Chromium Code Reviews| 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 a8ae3182dfde5789aa9685da794b3931099de0fe..6d55ae1817330c9571bc3dce653c6222a6fbb237 100644 |
| --- a/chrome/browser/policy/device_token_fetcher_unittest.cc |
| +++ b/chrome/browser/policy/device_token_fetcher_unittest.cc |
| @@ -35,6 +35,8 @@ class DeviceTokenFetcherTest : public testing::Test { |
| EXPECT_TRUE(temp_user_data_dir_.CreateUniqueTempDir()); |
| successful_registration_response_.mutable_register_response()-> |
| set_device_management_token("fake_token"); |
| + successful_registration_response_.mutable_register_response()-> |
| + set_enrollment_type(em::DeviceRegisterResponse::ENTERPRISE); |
| } |
| virtual void SetUp() { |
| @@ -107,11 +109,14 @@ TEST_F(DeviceTokenFetcherTest, FetchToken) { |
| ¬ifier_); |
| EXPECT_CALL(observer_, OnDeviceTokenChanged()); |
| EXPECT_EQ("", data_store_->device_token()); |
| + EXPECT_EQ(DEVICE_MODE_UNKNOWN, data_store_->device_mode()); |
| FetchToken(&fetcher); |
| loop_.RunAllPending(); |
| Mock::VerifyAndClearExpectations(&observer_); |
| std::string token = data_store_->device_token(); |
| EXPECT_NE("", token); |
| + // User policy registration should not set enrollment mode. |
| + EXPECT_EQ(DEVICE_MODE_UNKNOWN, data_store_->device_mode()); |
| // Calling FetchToken() again should result in a new token being fetched. |
| successful_registration_response_.mutable_register_response()-> |
| @@ -128,6 +133,62 @@ TEST_F(DeviceTokenFetcherTest, FetchToken) { |
| EXPECT_NE(token, token2); |
| } |
| +// User token fetches does not have to carry enrollment type. |
|
Mattias Nissler (ping if slow)
2012/02/21 10:37:46
That comment is misleading, since the test is real
pastarmovj
2012/02/21 14:57:08
Yep. I removed the comment here and put it down at
|
| +TEST_F(DeviceTokenFetcherTest, FetchDeviceToken) { |
| + testing::InSequence s; |
| + scoped_ptr<CloudPolicyDataStore> data_store( |
| + CloudPolicyDataStore::CreateForDevicePolicies()); |
| + data_store->AddObserver(&observer_); |
|
Mattias Nissler (ping if slow)
2012/02/21 10:37:46
do you actually need the observer for this test? I
pastarmovj
2012/02/21 14:57:08
Done.
|
| + EXPECT_CALL(service_, |
| + CreateJob(DeviceManagementRequestJob::TYPE_REGISTRATION)) |
| + .WillOnce(service_.SucceedJob(successful_registration_response_)); |
| + EXPECT_CALL(service_, StartJob(_)).WillOnce(VerifyRegisterRequest(false)); |
| + DeviceTokenFetcher fetcher(&service_, cache_.get(), data_store.get(), |
| + ¬ifier_); |
| + EXPECT_CALL(observer_, OnDeviceTokenChanged()); |
| + EXPECT_EQ("", data_store->device_token()); |
| + EXPECT_EQ(DEVICE_MODE_UNKNOWN, data_store->device_mode()); |
| + data_store->SetupForTesting("", "fake_device_id", "fake_user_name", |
| + "fake_auth_token", true); |
| + fetcher.FetchToken(); |
| + loop_.RunAllPending(); |
| + Mock::VerifyAndClearExpectations(&observer_); |
| + EXPECT_NE("", data_store->device_token()); |
| + EXPECT_EQ(DEVICE_MODE_ENTERPRISE, data_store->device_mode()); |
| + |
| + data_store->RemoveObserver(&observer_); |
| +} |
| + |
| +// TODO(pastarmovj): This test must be changed in accordance with |
| +// http://crosbug.com/26624. |
| +TEST_F(DeviceTokenFetcherTest, FetchDeviceTokenMissingMode) { |
| + testing::InSequence s; |
| + scoped_ptr<CloudPolicyDataStore> data_store( |
| + CloudPolicyDataStore::CreateForDevicePolicies()); |
| + data_store->AddObserver(&observer_); |
|
Mattias Nissler (ping if slow)
2012/02/21 10:37:46
ditto
pastarmovj
2012/02/21 14:57:08
Done.
|
| + EXPECT_CALL(service_, |
| + CreateJob(DeviceManagementRequestJob::TYPE_REGISTRATION)) |
| + .WillOnce(service_.SucceedJob(successful_registration_response_)); |
| + EXPECT_CALL(service_, StartJob(_)).WillOnce(VerifyRegisterRequest(false)); |
| + DeviceTokenFetcher fetcher(&service_, cache_.get(), data_store.get(), |
| + ¬ifier_); |
| + EXPECT_CALL(observer_, OnDeviceTokenChanged()); |
| + EXPECT_EQ("", data_store->device_token()); |
| + EXPECT_EQ(DEVICE_MODE_UNKNOWN, data_store->device_mode()); |
| + data_store->SetupForTesting("", "fake_device_id", "fake_user_name", |
| + "fake_auth_token", true); |
|
Mattias Nissler (ping if slow)
2012/02/21 10:37:46
It looks like this setup code is now duplicated 3
pastarmovj
2012/02/21 14:57:08
Did some consolidation. Could push it further but
|
| + successful_registration_response_.mutable_register_response()-> |
| + clear_enrollment_type(); |
| + fetcher.FetchToken(); |
| + loop_.RunAllPending(); |
| + Mock::VerifyAndClearExpectations(&observer_); |
| + EXPECT_NE("", data_store->device_token()); |
| + // TODO(pastarmovj): Modify when http://crosbug.com/26624 is resolved. |
| + EXPECT_EQ(DEVICE_MODE_ENTERPRISE, data_store->device_mode()); |
| + |
| + data_store->RemoveObserver(&observer_); |
| +} |
| + |
| TEST_F(DeviceTokenFetcherTest, RetryOnError) { |
| testing::InSequence s; |
| EXPECT_CALL(service_, |