1// Copyright 2014 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 COMPONENTS_POLICY_CORE_BROWSER_CONFIGURATION_POLICY_PREF_STORE_TEST_H_ 6#define COMPONENTS_POLICY_CORE_BROWSER_CONFIGURATION_POLICY_PREF_STORE_TEST_H_ 7 8#include "base/basictypes.h" 9#include "base/memory/ref_counted.h" 10#include "base/memory/scoped_ptr.h" 11#include "base/message_loop/message_loop.h" 12#include "components/policy/core/browser/configuration_policy_handler_list.h" 13#include "components/policy/core/common/mock_configuration_policy_provider.h" 14#include "components/policy/core/common/policy_service_impl.h" 15#include "testing/gtest/include/gtest/gtest.h" 16 17namespace policy { 18 19struct PolicyHandlerParameters; 20class PolicyMap; 21class PolicyService; 22class ConfigurationPolicyPrefStore; 23 24class ConfigurationPolicyPrefStoreTest : public testing::Test { 25 protected: 26 ConfigurationPolicyPrefStoreTest(); 27 virtual ~ConfigurationPolicyPrefStoreTest(); 28 virtual void TearDown() OVERRIDE; 29 void UpdateProviderPolicy(const PolicyMap& policy); 30 31 // A unit test can override this method to populate the policy handler 32 // parameters as suited to its needs. 33 virtual void PopulatePolicyHandlerParameters( 34 PolicyHandlerParameters* parameters); 35 36 PolicyServiceImpl::Providers providers_; 37 ConfigurationPolicyHandlerList handler_list_; 38 MockConfigurationPolicyProvider provider_; 39 scoped_ptr<PolicyService> policy_service_; 40 scoped_refptr<ConfigurationPolicyPrefStore> store_; 41 base::MessageLoop loop_; 42 43 private: 44 DISALLOW_COPY_AND_ASSIGN(ConfigurationPolicyPrefStoreTest); 45}; 46 47} // namespace policy 48 49#endif // COMPONENTS_POLICY_CORE_BROWSER_CONFIGURATION_POLICY_PREF_STORE_TEST_H_ 50