13551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
23551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
33551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// found in the LICENSE file.
43551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
53551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#ifndef CHROMEOS_NETWORK_MOCK_MANAGED_NETWORK_CONFIGURATION_HANDLER_H_
63551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#define CHROMEOS_NETWORK_MOCK_MANAGED_NETWORK_CONFIGURATION_HANDLER_H_
73551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
83551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "base/basictypes.h"
93551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "base/values.h"
103551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "chromeos/chromeos_export.h"
113551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "chromeos/network/managed_network_configuration_handler.h"
123551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "testing/gmock/include/gmock/gmock.h"
133551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
143551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)namespace chromeos {
153551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
163551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)class CHROMEOS_EXPORT MockManagedNetworkConfigurationHandler
173551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    : public ManagedNetworkConfigurationHandler {
183551c9c881056c480085172ff9840cab31610854Torne (Richard Coles) public:
193551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MockManagedNetworkConfigurationHandler();
203551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  virtual ~MockManagedNetworkConfigurationHandler();
213551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
223551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  // ManagedNetworkConfigurationHandler overrides
233551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD1(AddObserver, void(NetworkPolicyObserver* observer));
243551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD1(RemoveObserver, void(NetworkPolicyObserver* observer));
25010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)  MOCK_METHOD3(GetProperties,
26010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)               void(const std::string& service_path,
27010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                    const network_handler::DictionaryResultCallback& callback,
28010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                    const network_handler::ErrorCallback& error_callback));
293551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD4(GetManagedProperties,
303551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)               void(const std::string& userhash,
313551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)                    const std::string& service_path,
323551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)                    const network_handler::DictionaryResultCallback& callback,
333551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)                    const network_handler::ErrorCallback& error_callback));
343551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_CONST_METHOD4(
353551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)      SetProperties,
363551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)      void(const std::string& service_path,
373551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)           const base::DictionaryValue& user_settings,
383551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)           const base::Closure& callback,
393551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)           const network_handler::ErrorCallback& error_callback));
403551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_CONST_METHOD4(
413551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)      CreateConfiguration,
423551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)      void(const std::string& userhash,
433551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)           const base::DictionaryValue& properties,
443551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)           const network_handler::StringResultCallback& callback,
453551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)           const network_handler::ErrorCallback& error_callback));
463551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_CONST_METHOD3(
473551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)      RemoveConfiguration,
483551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)      void(const std::string& service_path,
493551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)           const base::Closure& callback,
503551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)           const network_handler::ErrorCallback& error_callback));
518bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)  MOCK_METHOD4(SetPolicy,
524e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)               void(::onc::ONCSource onc_source,
533551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)                    const std::string& userhash,
548bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)                    const base::ListValue& network_configs_onc,
558bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)                    const base::DictionaryValue& global_network_config));
563551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_CONST_METHOD3(FindPolicyByGUID,
574e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                     const base::DictionaryValue*(
584e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                         const std::string userhash,
594e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                         const std::string& guid,
604e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                         ::onc::ONCSource* onc_source));
618bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)  MOCK_CONST_METHOD1(GetGlobalConfigFromPolicy,
628bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)                     const base::DictionaryValue*(const std::string userhash));
633551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_CONST_METHOD2(
643551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)      FindPolicyByGuidAndProfile,
653551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)      const base::DictionaryValue*(const std::string& guid,
663551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)                                   const std::string& profile_path));
673551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
683551c9c881056c480085172ff9840cab31610854Torne (Richard Coles) private:
693551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  DISALLOW_COPY_AND_ASSIGN(MockManagedNetworkConfigurationHandler);
703551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)};
713551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
723551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)}  // namespace chromeos
733551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
743551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#endif  // CHROMEOS_NETWORK_MOCK_MANAGED_NETWORK_CONFIGURATION_HANDLER_H_
75