Index: chrome/browser/policy/cloud/device_management_service_browsertest.cc |
diff --git a/chrome/browser/policy/cloud/device_management_service_browsertest.cc b/chrome/browser/policy/cloud/device_management_service_browsertest.cc |
index df27a8db15ab663f7756a95a04165821747303a8..4c9d10d74d51771cfd39b085e9ae071dae6945d5 100644 |
--- a/chrome/browser/policy/cloud/device_management_service_browsertest.cc |
+++ b/chrome/browser/policy/cloud/device_management_service_browsertest.cc |
@@ -42,6 +42,8 @@ void ConstructResponse(const char* request_data, |
if (request.has_register_request()) { |
response.mutable_register_response()->set_device_management_token( |
"fake_token"); |
+ } else if (request.has_service_api_access_request()) { |
+ response.mutable_service_api_access_response(); |
} else if (request.has_unregister_request()) { |
response.mutable_unregister_response(); |
} else if (request.has_policy_request()) { |
@@ -158,6 +160,26 @@ IN_PROC_BROWSER_TEST_P(DeviceManagementServiceIntegrationTest, Registration) { |
EXPECT_FALSE(token_.empty()); |
} |
+IN_PROC_BROWSER_TEST_P(DeviceManagementServiceIntegrationTest, |
+ ApiAuthCodeFetch) { |
+ PerformRegistration(); |
+ |
+ ExpectRequest(); |
+ EXPECT_CALL(*this, OnJobDone(DM_STATUS_SUCCESS, _)) |
+ .WillOnce(InvokeWithoutArgs(MessageLoop::current(), &MessageLoop::Quit)); |
+ scoped_ptr<DeviceManagementRequestJob> job(service_->CreateJob( |
+ DeviceManagementRequestJob::TYPE_API_AUTH_CODE_FETCH)); |
+ job->SetDMToken(token_); |
+ job->SetClientID("testid"); |
+ em::DeviceServiceApiAccessRequest* request = |
+ job->GetRequest()->mutable_service_api_access_request(); |
+ request->add_auth_scope("authScope4Test"); |
+ request->set_oauth2_client_id("oauth2ClientId4Test"); |
+ job->Start(base::Bind(&DeviceManagementServiceIntegrationTest::OnJobDone, |
+ base::Unretained(this))); |
+ MessageLoop::current()->Run(); |
+} |
+ |
IN_PROC_BROWSER_TEST_P(DeviceManagementServiceIntegrationTest, PolicyFetch) { |
PerformRegistration(); |