Index: chrome/browser/policy/cloud_policy_manager_browsertest.cc |
diff --git a/chrome/browser/policy/cloud_policy_manager_browsertest.cc b/chrome/browser/policy/cloud_policy_manager_browsertest.cc |
deleted file mode 100644 |
index 9124707844d290fb8b7f0018c8f0d8cdb9f3872b..0000000000000000000000000000000000000000 |
--- a/chrome/browser/policy/cloud_policy_manager_browsertest.cc |
+++ /dev/null |
@@ -1,186 +0,0 @@ |
-// Copyright (c) 2013 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/command_line.h" |
-#include "base/memory/scoped_ptr.h" |
-#include "base/run_loop.h" |
-#include "chrome/browser/browser_process.h" |
-#include "chrome/browser/policy/browser_policy_connector.h" |
-#include "chrome/browser/policy/cloud_policy_client.h" |
-#include "chrome/browser/policy/mock_cloud_policy_client.h" |
-#include "chrome/browser/policy/proto/device_management_backend.pb.h" |
-#include "chrome/browser/policy/test_request_interceptor.h" |
-#include "chrome/browser/policy/test_utils.h" |
-#include "chrome/browser/profiles/profile.h" |
-#include "chrome/browser/ui/browser.h" |
-#include "chrome/common/chrome_switches.h" |
-#include "chrome/test/base/in_process_browser_test.h" |
-#include "net/base/net_errors.h" |
-#include "testing/gmock/include/gmock/gmock.h" |
-#include "testing/gtest/include/gtest/gtest.h" |
- |
-#if defined(OS_CHROMEOS) |
-#include "chrome/browser/policy/user_cloud_policy_manager_chromeos.h" |
-#else |
-#include "chrome/browser/policy/user_cloud_policy_manager.h" |
-#include "chrome/browser/policy/user_cloud_policy_manager_factory.h" |
-#include "chrome/browser/signin/signin_manager.h" |
-#include "chrome/browser/signin/signin_manager_factory.h" |
-#endif |
- |
-using testing::AnyNumber; |
-using testing::InvokeWithoutArgs; |
-using testing::Mock; |
-using testing::_; |
- |
-namespace em = enterprise_management; |
- |
-namespace policy { |
- |
-// Tests the cloud policy stack using a URLRequestJobFactory::ProtocolHandler |
-// to intercept requests and produce canned responses. |
-class CloudPolicyManagerTest : public InProcessBrowserTest { |
- protected: |
- CloudPolicyManagerTest() {} |
- virtual ~CloudPolicyManagerTest() {} |
- |
- virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { |
- CommandLine* command_line = CommandLine::ForCurrentProcess(); |
- command_line->AppendSwitchASCII(switches::kDeviceManagementUrl, |
- "http://localhost"); |
- } |
- |
- virtual void SetUpOnMainThread() OVERRIDE { |
- ASSERT_TRUE(PolicyServiceIsEmpty(g_browser_process->policy_service())) |
- << "Pre-existing policies in this machine will make this test fail."; |
- |
- interceptor_.reset(new TestRequestInterceptor("localhost")); |
- |
- BrowserPolicyConnector* connector = |
- g_browser_process->browser_policy_connector(); |
- connector->ScheduleServiceInitialization(0); |
- |
-#if !defined(OS_CHROMEOS) |
- // Mock a signed-in user. This is used by the UserCloudPolicyStore to pass |
- // the username to the UserCloudPolicyValidator. |
- SigninManager* signin_manager = |
- SigninManagerFactory::GetForProfile(browser()->profile()); |
- ASSERT_TRUE(signin_manager); |
- signin_manager->SetAuthenticatedUsername("user@example.com"); |
- |
- UserCloudPolicyManager* policy_manager = |
- UserCloudPolicyManagerFactory::GetForProfile(browser()->profile()); |
- ASSERT_TRUE(policy_manager); |
- policy_manager->Connect(g_browser_process->local_state(), |
- UserCloudPolicyManager::CreateCloudPolicyClient( |
- connector->device_management_service()).Pass()); |
-#endif |
- } |
- |
- virtual void CleanUpOnMainThread() OVERRIDE { |
- // Verify that all the expected requests were handled. |
- EXPECT_EQ(0u, interceptor_->GetPendingSize()); |
- |
- interceptor_.reset(); |
- } |
- |
-#if defined(OS_CHROMEOS) |
- UserCloudPolicyManagerChromeOS* policy_manager() { |
- return g_browser_process->browser_policy_connector()-> |
- GetUserCloudPolicyManager(); |
- } |
-#else |
- UserCloudPolicyManager* policy_manager() { |
- return UserCloudPolicyManagerFactory::GetForProfile(browser()->profile()); |
- } |
-#endif // defined(OS_CHROMEOS) |
- |
- // Register the client of the policy_manager() using a bogus auth token, and |
- // returns once the registration gets a result back. |
- void Register() { |
- ASSERT_TRUE(policy_manager()); |
- ASSERT_TRUE(policy_manager()->core()->client()); |
- |
- base::RunLoop run_loop; |
- MockCloudPolicyClientObserver observer; |
- EXPECT_CALL(observer, OnRegistrationStateChanged(_)) |
- .Times(AnyNumber()) |
- .WillRepeatedly(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit)); |
- EXPECT_CALL(observer, OnClientError(_)) |
- .Times(AnyNumber()) |
- .WillRepeatedly(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit)); |
- policy_manager()->core()->client()->AddObserver(&observer); |
- |
- // Give a bogus OAuth token to the |policy_manager|. This should make its |
- // CloudPolicyClient fetch the DMToken. |
- policy_manager()->RegisterClient("bogus"); |
- run_loop.Run(); |
- Mock::VerifyAndClearExpectations(&observer); |
- policy_manager()->core()->client()->RemoveObserver(&observer); |
- } |
- |
- scoped_ptr<TestRequestInterceptor> interceptor_; |
-}; |
- |
-IN_PROC_BROWSER_TEST_F(CloudPolicyManagerTest, Register) { |
- // Accept one register request. The initial request should not include the |
- // reregister flag. |
- em::DeviceRegisterRequest::Type expected_type = |
-#if defined(OS_CHROMEOS) |
- em::DeviceRegisterRequest::USER; |
-#else |
- em::DeviceRegisterRequest::BROWSER; |
-#endif |
- const bool expect_reregister = false; |
- interceptor_->PushJobCallback( |
- TestRequestInterceptor::RegisterJob(expected_type, expect_reregister)); |
- |
- EXPECT_FALSE(policy_manager()->core()->client()->is_registered()); |
- ASSERT_NO_FATAL_FAILURE(Register()); |
- EXPECT_TRUE(policy_manager()->core()->client()->is_registered()); |
-} |
- |
-IN_PROC_BROWSER_TEST_F(CloudPolicyManagerTest, RegisterFails) { |
- // The interceptor makes all requests fail by default; this will trigger |
- // an OnClientError() call on the observer. |
- EXPECT_FALSE(policy_manager()->core()->client()->is_registered()); |
- ASSERT_NO_FATAL_FAILURE(Register()); |
- EXPECT_FALSE(policy_manager()->core()->client()->is_registered()); |
-} |
- |
-IN_PROC_BROWSER_TEST_F(CloudPolicyManagerTest, RegisterFailsWithRetries) { |
- // Fail 4 times with ERR_NETWORK_CHANGED; the first 3 will trigger a retry, |
- // the last one will forward the error to the client and unblock the |
- // register process. |
- for (int i = 0; i < 4; ++i) { |
- interceptor_->PushJobCallback( |
- TestRequestInterceptor::ErrorJob(net::ERR_NETWORK_CHANGED)); |
- } |
- |
- EXPECT_FALSE(policy_manager()->core()->client()->is_registered()); |
- ASSERT_NO_FATAL_FAILURE(Register()); |
- EXPECT_FALSE(policy_manager()->core()->client()->is_registered()); |
-} |
- |
-IN_PROC_BROWSER_TEST_F(CloudPolicyManagerTest, RegisterWithRetry) { |
- // Accept one register request after failing once. The retry request should |
- // set the reregister flag. |
- interceptor_->PushJobCallback( |
- TestRequestInterceptor::ErrorJob(net::ERR_NETWORK_CHANGED)); |
- em::DeviceRegisterRequest::Type expected_type = |
-#if defined(OS_CHROMEOS) |
- em::DeviceRegisterRequest::USER; |
-#else |
- em::DeviceRegisterRequest::BROWSER; |
-#endif |
- const bool expect_reregister = true; |
- interceptor_->PushJobCallback( |
- TestRequestInterceptor::RegisterJob(expected_type, expect_reregister)); |
- |
- EXPECT_FALSE(policy_manager()->core()->client()->is_registered()); |
- ASSERT_NO_FATAL_FAILURE(Register()); |
- EXPECT_TRUE(policy_manager()->core()->client()->is_registered()); |
-} |
- |
-} // namespace policy |