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

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

Issue 12189011: Split up chrome/browser/policy subdirectory (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase, add chrome/browser/chromeos/policy/OWNERS Created 7 years, 9 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_management_service_browsertest.cc
diff --git a/chrome/browser/policy/device_management_service_browsertest.cc b/chrome/browser/policy/device_management_service_browsertest.cc
deleted file mode 100644
index 8d0b018ffc7c708b217f94a8f4f3f4d6c8de0c7a..0000000000000000000000000000000000000000
--- a/chrome/browser/policy/device_management_service_browsertest.cc
+++ /dev/null
@@ -1,216 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/bind.h"
-#include "base/bind_helpers.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/message_loop.h"
-#include "base/stl_util.h"
-#include "chrome/browser/policy/cloud_policy_constants.h"
-#include "chrome/browser/policy/device_management_service.h"
-#include "chrome/browser/policy/test/local_policy_test_server.h"
-#include "chrome/browser/policy/test_request_interceptor.h"
-#include "chrome/test/base/in_process_browser_test.h"
-#include "net/base/upload_bytes_element_reader.h"
-#include "net/base/upload_data_stream.h"
-#include "net/url_request/url_fetcher.h"
-#include "net/url_request/url_request.h"
-#include "net/url_request/url_request_test_job.h"
-#include "testing/gmock/include/gmock/gmock.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-using testing::DoAll;
-using testing::Invoke;
-using testing::InvokeWithoutArgs;
-using testing::_;
-
-namespace em = enterprise_management;
-
-namespace policy {
-
-namespace {
-
-// Parses the DeviceManagementRequest in |request_data| and writes a serialized
-// DeviceManagementResponse to |response_data|.
-void ConstructResponse(const char* request_data,
- uint64 request_data_length,
- std::string* response_data) {
- em::DeviceManagementRequest request;
- ASSERT_TRUE(request.ParseFromArray(request_data, request_data_length));
- em::DeviceManagementResponse response;
- if (request.has_register_request()) {
- response.mutable_register_response()->set_device_management_token(
- "fake_token");
- } else if (request.has_unregister_request()) {
- response.mutable_unregister_response();
- } else if (request.has_policy_request()) {
- response.mutable_policy_response()->add_response();
- } else if (request.has_auto_enrollment_request()) {
- response.mutable_auto_enrollment_response();
- } else {
- FAIL() << "Failed to parse request.";
- }
- ASSERT_TRUE(response.SerializeToString(response_data));
-}
-
-// JobCallback for the interceptor.
-net::URLRequestJob* ResponseJob(
- net::URLRequest* request,
- net::NetworkDelegate* network_delegate) {
- const net::UploadDataStream* upload = request->get_upload();
- if (upload != NULL &&
- upload->element_readers().size() == 1 &&
- upload->element_readers()[0]->AsBytesReader()) {
- std::string response_data;
- const net::UploadBytesElementReader* bytes_reader =
- upload->element_readers()[0]->AsBytesReader();
- ConstructResponse(bytes_reader->bytes(),
- bytes_reader->length(),
- &response_data);
- return new net::URLRequestTestJob(
- request,
- network_delegate,
- net::URLRequestTestJob::test_headers(),
- response_data,
- true);
- }
-
- return NULL;
-}
-
-} // namespace
-
-class DeviceManagementServiceIntegrationTest
- : public InProcessBrowserTest,
- public testing::WithParamInterface<
- std::string (DeviceManagementServiceIntegrationTest::*)(void)> {
- public:
- MOCK_METHOD2(OnJobDone, void(DeviceManagementStatus,
- const em::DeviceManagementResponse&));
-
- std::string InitCannedResponse() {
- interceptor_.reset(new TestRequestInterceptor("localhost"));
- return "http://localhost";
- }
-
- std::string InitTestServer() {
- StartTestServer();
- return test_server_->GetServiceURL().spec();
- }
-
- protected:
- void ExpectRequest() {
- if (interceptor_)
- interceptor_->PushJobCallback(base::Bind(&ResponseJob));
- }
-
- void PerformRegistration() {
- ExpectRequest();
- EXPECT_CALL(*this, OnJobDone(DM_STATUS_SUCCESS, _))
- .WillOnce(
- DoAll(Invoke(this,
- &DeviceManagementServiceIntegrationTest::RecordToken),
- InvokeWithoutArgs(MessageLoop::current(),
- &MessageLoop::Quit)));
- scoped_ptr<DeviceManagementRequestJob> job(
- service_->CreateJob(DeviceManagementRequestJob::TYPE_REGISTRATION));
- job->SetGaiaToken("gaia_auth_token");
- job->SetOAuthToken("oauth_token");
- job->SetClientID("testid");
- job->GetRequest()->mutable_register_request();
- job->Start(base::Bind(&DeviceManagementServiceIntegrationTest::OnJobDone,
- base::Unretained(this)));
- MessageLoop::current()->Run();
- }
-
- virtual void SetUpOnMainThread() OVERRIDE {
- std::string service_url((this->*(GetParam()))());
- service_.reset(new DeviceManagementService(service_url));
- service_->ScheduleInitialization(0);
- }
-
- virtual void CleanUpOnMainThread() OVERRIDE {
- service_.reset();
- test_server_.reset();
- interceptor_.reset();
- }
-
- void StartTestServer() {
- test_server_.reset(
- new LocalPolicyTestServer("device_management_service_browsertest"));
- ASSERT_TRUE(test_server_->Start());
- }
-
- void RecordToken(DeviceManagementStatus status,
- const em::DeviceManagementResponse& response) {
- token_ = response.register_response().device_management_token();
- }
-
- std::string token_;
- scoped_ptr<DeviceManagementService> service_;
- scoped_ptr<LocalPolicyTestServer> test_server_;
- scoped_ptr<TestRequestInterceptor> interceptor_;
-};
-
-IN_PROC_BROWSER_TEST_P(DeviceManagementServiceIntegrationTest, Registration) {
- PerformRegistration();
- EXPECT_FALSE(token_.empty());
-}
-
-IN_PROC_BROWSER_TEST_P(DeviceManagementServiceIntegrationTest, PolicyFetch) {
- PerformRegistration();
-
- ExpectRequest();
- EXPECT_CALL(*this, OnJobDone(DM_STATUS_SUCCESS, _))
- .WillOnce(InvokeWithoutArgs(MessageLoop::current(), &MessageLoop::Quit));
- scoped_ptr<DeviceManagementRequestJob> job(
- service_->CreateJob(DeviceManagementRequestJob::TYPE_POLICY_FETCH));
- job->SetDMToken(token_);
- job->SetUserAffiliation(USER_AFFILIATION_NONE);
- job->SetClientID("testid");
- em::DevicePolicyRequest* request =
- job->GetRequest()->mutable_policy_request();
- request->add_request()->set_policy_type(dm_protocol::kChromeUserPolicyType);
- job->Start(base::Bind(&DeviceManagementServiceIntegrationTest::OnJobDone,
- base::Unretained(this)));
- MessageLoop::current()->Run();
-}
-
-IN_PROC_BROWSER_TEST_P(DeviceManagementServiceIntegrationTest, Unregistration) {
- PerformRegistration();
-
- ExpectRequest();
- EXPECT_CALL(*this, OnJobDone(DM_STATUS_SUCCESS, _))
- .WillOnce(InvokeWithoutArgs(MessageLoop::current(), &MessageLoop::Quit));
- scoped_ptr<DeviceManagementRequestJob> job(
- service_->CreateJob(DeviceManagementRequestJob::TYPE_UNREGISTRATION));
- job->SetDMToken(token_);
- job->SetClientID("testid");
- job->GetRequest()->mutable_unregister_request();
- job->Start(base::Bind(&DeviceManagementServiceIntegrationTest::OnJobDone,
- base::Unretained(this)));
- MessageLoop::current()->Run();
-}
-
-IN_PROC_BROWSER_TEST_P(DeviceManagementServiceIntegrationTest, AutoEnrollment) {
- ExpectRequest();
- EXPECT_CALL(*this, OnJobDone(DM_STATUS_SUCCESS, _))
- .WillOnce(InvokeWithoutArgs(MessageLoop::current(), &MessageLoop::Quit));
- scoped_ptr<DeviceManagementRequestJob> job(
- service_->CreateJob(DeviceManagementRequestJob::TYPE_AUTO_ENROLLMENT));
- job->SetClientID("testid");
- job->GetRequest()->mutable_auto_enrollment_request()->set_remainder(0);
- job->GetRequest()->mutable_auto_enrollment_request()->set_modulus(1);
- job->Start(base::Bind(&DeviceManagementServiceIntegrationTest::OnJobDone,
- base::Unretained(this)));
- MessageLoop::current()->Run();
-}
-
-INSTANTIATE_TEST_CASE_P(
- DeviceManagementServiceIntegrationTestInstance,
- DeviceManagementServiceIntegrationTest,
- testing::Values(&DeviceManagementServiceIntegrationTest::InitCannedResponse,
- &DeviceManagementServiceIntegrationTest::InitTestServer));
-
-} // namespace policy
« no previous file with comments | « chrome/browser/policy/device_management_service.cc ('k') | chrome/browser/policy/device_management_service_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698