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#ifndef COMPONENTS_POLICY_CORE_COMMON_CLOUD_MOCK_CLOUD_EXTERNAL_DATA_MANAGER_H_ 6#define COMPONENTS_POLICY_CORE_COMMON_CLOUD_MOCK_CLOUD_EXTERNAL_DATA_MANAGER_H_ 7 8#include <string> 9 10#include "base/basictypes.h" 11#include "base/memory/ref_counted.h" 12#include "base/memory/scoped_ptr.h" 13#include "components/policy/core/common/cloud/cloud_external_data_manager.h" 14#include "components/policy/core/common/external_data_fetcher.h" 15#include "testing/gmock/include/gmock/gmock.h" 16 17namespace net { 18class URLRequestContextGetter; 19} 20 21namespace policy { 22 23class ExternalDataFetcher; 24 25class MockCloudExternalDataManager : public CloudExternalDataManager { 26 public: 27 MockCloudExternalDataManager(); 28 virtual ~MockCloudExternalDataManager(); 29 30 MOCK_METHOD0(OnPolicyStoreLoaded, void(void)); 31 MOCK_METHOD1(Connect, void(scoped_refptr<net::URLRequestContextGetter>)); 32 MOCK_METHOD0(Disconnect, void(void)); 33 MOCK_METHOD2(Fetch, void(const std::string&, 34 const ExternalDataFetcher::FetchCallback&)); 35 36 scoped_ptr<ExternalDataFetcher> CreateExternalDataFetcher( 37 const std::string& policy); 38 39 private: 40 DISALLOW_COPY_AND_ASSIGN(MockCloudExternalDataManager); 41}; 42 43} // namespace policy 44 45#endif // COMPONENTS_POLICY_CORE_COMMON_CLOUD_MOCK_CLOUD_EXTERNAL_DATA_MANAGER_H_ 46