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 17 namespace net { 18 class URLRequestContextGetter; 19 } 20 21 namespace policy { 22 23 class ExternalDataFetcher; 24 25 class 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