xref: /aosp_15_r20/external/libchrome/components/policy/core/common/mock_configuration_policy_provider.cc (revision 635a864187cb8b6c713ff48b7e790a6b21769273)
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 <memory>
8 #include <string>
9 #include <utility>
10 
11 #include "base/message_loop/message_loop_current.h"
12 #include "base/run_loop.h"
13 #include "components/policy/core/common/policy_bundle.h"
14 
15 using testing::Invoke;
16 
17 namespace policy {
18 
MockConfigurationPolicyProvider()19 MockConfigurationPolicyProvider::MockConfigurationPolicyProvider() {}
20 
~MockConfigurationPolicyProvider()21 MockConfigurationPolicyProvider::~MockConfigurationPolicyProvider() {}
22 
UpdateChromePolicy(const PolicyMap & policy)23 void MockConfigurationPolicyProvider::UpdateChromePolicy(
24     const PolicyMap& policy) {
25   std::unique_ptr<PolicyBundle> bundle(new PolicyBundle());
26   bundle->Get(PolicyNamespace(POLICY_DOMAIN_CHROME, std::string()))
27       .CopyFrom(policy);
28   UpdatePolicy(std::move(bundle));
29   if (base::MessageLoopCurrent::IsSet())
30     base::RunLoop().RunUntilIdle();
31 }
32 
SetAutoRefresh()33 void MockConfigurationPolicyProvider::SetAutoRefresh() {
34   EXPECT_CALL(*this, RefreshPolicies()).WillRepeatedly(
35       Invoke(this, &MockConfigurationPolicyProvider::RefreshWithSamePolicies));
36 }
37 
RefreshWithSamePolicies()38 void MockConfigurationPolicyProvider::RefreshWithSamePolicies() {
39   std::unique_ptr<PolicyBundle> bundle(new PolicyBundle);
40   bundle->CopyFrom(policies());
41   UpdatePolicy(std::move(bundle));
42 }
43 
MockConfigurationPolicyObserver()44 MockConfigurationPolicyObserver::MockConfigurationPolicyObserver() {}
45 
~MockConfigurationPolicyObserver()46 MockConfigurationPolicyObserver::~MockConfigurationPolicyObserver() {}
47 
48 }  // namespace policy
49