Home | History | Annotate | Download | only in policy
      1 // Copyright (c) 2010 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 #ifndef CHROME_BROWSER_POLICY_MOCK_CONFIGURATION_POLICY_PROVIDER_H_
      6 #define CHROME_BROWSER_POLICY_MOCK_CONFIGURATION_POLICY_PROVIDER_H_
      7 #pragma once
      8 
      9 #include <map>
     10 #include <utility>
     11 
     12 #include "chrome/browser/policy/configuration_policy_provider.h"
     13 #include "chrome/browser/policy/policy_map.h"
     14 #include "testing/gmock/include/gmock/gmock.h"
     15 
     16 namespace policy {
     17 
     18 // Mock ConfigurationPolicyProvider implementation that supplies canned
     19 // values for polices.
     20 class MockConfigurationPolicyProvider : public ConfigurationPolicyProvider {
     21  public:
     22   MockConfigurationPolicyProvider();
     23   virtual ~MockConfigurationPolicyProvider();
     24 
     25   void AddPolicy(ConfigurationPolicyType policy, Value* value);
     26   void RemovePolicy(ConfigurationPolicyType policy);
     27 
     28   void SetInitializationComplete(bool initialization_complete);
     29 
     30   // ConfigurationPolicyProvider method overrides.
     31   virtual bool Provide(ConfigurationPolicyStoreInterface* store);
     32   virtual bool IsInitializationComplete() const;
     33 
     34  private:
     35   // ConfigurationPolicyProvider overrides:
     36   virtual void AddObserver(ConfigurationPolicyProvider::Observer* observer) {}
     37   virtual void RemoveObserver(
     38       ConfigurationPolicyProvider::Observer* observer) {}
     39 
     40   PolicyMap policy_map_;
     41   bool initialization_complete_;
     42 };
     43 
     44 }  // namespace policy
     45 
     46 #endif  // CHROME_BROWSER_POLICY_MOCK_CONFIGURATION_POLICY_PROVIDER_H_
     47