| 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 029d8d44b393d9a122c52a744a6f2a29cc8f831b..a8ae3182dfde5789aa9685da794b3931099de0fe 100644
|
| --- a/chrome/browser/policy/device_token_fetcher_unittest.cc
|
| +++ b/chrome/browser/policy/device_token_fetcher_unittest.cc
|
| @@ -83,11 +83,26 @@ class DeviceTokenFetcherTest : public testing::Test {
|
| content::TestBrowserThread file_thread_;
|
| };
|
|
|
| +ACTION_P(VerifyRegisterRequest, known_machine_id) {
|
| + ASSERT_TRUE(arg0);
|
| + ASSERT_TRUE(arg0->GetRequest());
|
| + ASSERT_TRUE(arg0->GetRequest()->has_register_request());
|
| + const em::DeviceRegisterRequest& request =
|
| + arg0->GetRequest()->register_request();
|
| + if (known_machine_id) {
|
| + EXPECT_TRUE(request.has_known_machine_id());
|
| + EXPECT_TRUE(request.known_machine_id());
|
| + } else {
|
| + EXPECT_FALSE(request.has_known_machine_id());
|
| + }
|
| +}
|
| +
|
| TEST_F(DeviceTokenFetcherTest, FetchToken) {
|
| testing::InSequence s;
|
| 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());
|
| @@ -187,4 +202,24 @@ TEST_F(DeviceTokenFetcherTest, SetFetchingDoneOnFailures) {
|
| EXPECT_TRUE(cache_->IsReady());
|
| }
|
|
|
| +TEST_F(DeviceTokenFetcherTest, SetKnownMachineId) {
|
| + EXPECT_CALL(service_,
|
| + CreateJob(DeviceManagementRequestJob::TYPE_REGISTRATION))
|
| + .WillOnce(service_.SucceedJob(successful_registration_response_));
|
| + EXPECT_CALL(service_, StartJob(_)).WillOnce(VerifyRegisterRequest(true));
|
| +
|
| + DeviceTokenFetcher fetcher(&service_, cache_.get(), data_store_.get(),
|
| + ¬ifier_);
|
| + EXPECT_CALL(observer_, OnDeviceTokenChanged());
|
| + EXPECT_EQ("", data_store_->device_token());
|
| +
|
| + data_store_->set_known_machine_id(true);
|
| + FetchToken(&fetcher);
|
| + loop_.RunAllPending();
|
| +
|
| + Mock::VerifyAndClearExpectations(&observer_);
|
| + std::string token = data_store_->device_token();
|
| + EXPECT_NE("", token);
|
| +}
|
| +
|
| } // namespace policy
|
|
|