• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "components/policy/core/common/mock_configuration_policy_provider.h"
6 
7 #include <string>
8 
9 #include "base/memory/scoped_ptr.h"
10 #include "base/message_loop/message_loop.h"
11 #include "base/run_loop.h"
12 #include "components/policy/core/common/policy_bundle.h"
13 
14 using testing::Invoke;
15 
16 namespace policy {
17 
MockConfigurationPolicyProvider()18 MockConfigurationPolicyProvider::MockConfigurationPolicyProvider() {}
19 
~MockConfigurationPolicyProvider()20 MockConfigurationPolicyProvider::~MockConfigurationPolicyProvider() {}
21 
UpdateChromePolicy(const PolicyMap & policy)22 void MockConfigurationPolicyProvider::UpdateChromePolicy(
23     const PolicyMap& policy) {
24   scoped_ptr<PolicyBundle> bundle(new PolicyBundle());
25   bundle->Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string()))
26       .CopyFrom(policy);
27   UpdatePolicy(bundle.Pass());
28   if (base::MessageLoop::current())
29     base::RunLoop().RunUntilIdle();
30 }
31 
SetAutoRefresh()32 void MockConfigurationPolicyProvider::SetAutoRefresh() {
33   EXPECT_CALL(*this, RefreshPolicies()).WillRepeatedly(
34       Invoke(this, &MockConfigurationPolicyProvider::RefreshWithSamePolicies));
35 }
36 
RefreshWithSamePolicies()37 void MockConfigurationPolicyProvider::RefreshWithSamePolicies() {
38   scoped_ptr<PolicyBundle> bundle(new PolicyBundle);
39   bundle->CopyFrom(policies());
40   UpdatePolicy(bundle.Pass());
41 }
42 
MockConfigurationPolicyObserver()43 MockConfigurationPolicyObserver::MockConfigurationPolicyObserver() {}
44 
~MockConfigurationPolicyObserver()45 MockConfigurationPolicyObserver::~MockConfigurationPolicyObserver() {}
46 
47 }  // namespace policy
48