1// Copyright (c) 2012 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_COMMON_CLOUD_MOCK_CLOUD_POLICY_STORE_H_ 6#define COMPONENTS_POLICY_CORE_COMMON_CLOUD_MOCK_CLOUD_POLICY_STORE_H_ 7 8#include "components/policy/core/common/cloud/cloud_policy_store.h" 9#include "testing/gmock/include/gmock/gmock.h" 10 11namespace policy { 12 13class MockCloudPolicyStore : public CloudPolicyStore { 14 public: 15 MockCloudPolicyStore(); 16 virtual ~MockCloudPolicyStore(); 17 18 MOCK_METHOD1(Store, void(const enterprise_management::PolicyFetchResponse&)); 19 MOCK_METHOD0(Load, void(void)); 20 21 // Publish the protected members. 22 using CloudPolicyStore::NotifyStoreLoaded; 23 using CloudPolicyStore::NotifyStoreError; 24 25 using CloudPolicyStore::policy_map_; 26 using CloudPolicyStore::policy_; 27 using CloudPolicyStore::status_; 28 using CloudPolicyStore::invalidation_version_; 29 30 private: 31 DISALLOW_COPY_AND_ASSIGN(MockCloudPolicyStore); 32}; 33 34class MockCloudPolicyStoreObserver : public CloudPolicyStore::Observer { 35 public: 36 MockCloudPolicyStoreObserver(); 37 virtual ~MockCloudPolicyStoreObserver(); 38 39 MOCK_METHOD1(OnStoreLoaded, void(CloudPolicyStore* store)); 40 MOCK_METHOD1(OnStoreError, void(CloudPolicyStore* store)); 41 42 private: 43 DISALLOW_COPY_AND_ASSIGN(MockCloudPolicyStoreObserver); 44}; 45 46} // namespace policy 47 48#endif // COMPONENTS_POLICY_CORE_COMMON_CLOUD_MOCK_CLOUD_POLICY_STORE_H_ 49