mock_dhcp_provider.h revision d48fa0c5531e2102d4f537e81b9f92afc2d60955
1fb46caf4f23a41e73dfd87547121b5fb0230295aThieu Le// Copyright (c) 2012 The Chromium OS Authors. All rights reserved. 277cb681ab58c6623464a355e646138ab84d38573Darin Petkov// Use of this source code is governed by a BSD-style license that can be 377cb681ab58c6623464a355e646138ab84d38573Darin Petkov// found in the LICENSE file. 477cb681ab58c6623464a355e646138ab84d38573Darin Petkov 5675d0b0f04936050a357722f52dc078a3ab671d8Peter Qiu#ifndef SHILL_DHCP_MOCK_DHCP_PROVIDER_H_ 6675d0b0f04936050a357722f52dc078a3ab671d8Peter Qiu#define SHILL_DHCP_MOCK_DHCP_PROVIDER_H_ 777cb681ab58c6623464a355e646138ab84d38573Darin Petkov 8ed2c28c6e3c0bc2f9d8832fee083868304178f08Hristo Stefanov#include <string> 9ed2c28c6e3c0bc2f9d8832fee083868304178f08Hristo Stefanov 10cc67c52a2c00f90e877971d552208dd99825d84eBen Chan#include <base/macros.h> 1177cb681ab58c6623464a355e646138ab84d38573Darin Petkov#include <gmock/gmock.h> 1277cb681ab58c6623464a355e646138ab84d38573Darin Petkov 13675d0b0f04936050a357722f52dc078a3ab671d8Peter Qiu#include "shill/dhcp/dhcp_config.h" 14675d0b0f04936050a357722f52dc078a3ab671d8Peter Qiu#include "shill/dhcp/dhcp_provider.h" 15f2f68a50aabcde256cabad0041c357cbacaeb3e0mukesh agrawal#include "shill/refptr_types.h" 1677cb681ab58c6623464a355e646138ab84d38573Darin Petkov 1777cb681ab58c6623464a355e646138ab84d38573Darin Petkovnamespace shill { 1877cb681ab58c6623464a355e646138ab84d38573Darin Petkov 1977cb681ab58c6623464a355e646138ab84d38573Darin Petkovclass MockDHCPProvider : public DHCPProvider { 2077cb681ab58c6623464a355e646138ab84d38573Darin Petkov public: 211bdedf1296df51b2566c8d73299d52546167b971Darin Petkov MockDHCPProvider(); 225ea763b83299b5fad76a87183fb39a74c2d3c61dBen Chan ~MockDHCPProvider() override; 231bdedf1296df51b2566c8d73299d52546167b971Darin Petkov 243bdf1abfba480415a4714108e615649f422197e0Paul Stewart MOCK_METHOD4(Init, 253bdf1abfba480415a4714108e615649f422197e0Paul Stewart void(ControlInterface *, EventDispatcher *, GLib *, Metrics *)); 268e0151e84f077cc9c0646d5bafd925ed235a1c12Peter Qiu MOCK_METHOD4(CreateIPv4Config, 27d408fdf69489e3199c63796a06f7cfbbb4513515Paul Stewart DHCPConfigRefPtr(const std::string &device_name, 28d408fdf69489e3199c63796a06f7cfbbb4513515Paul Stewart const std::string &host_name, 29d408fdf69489e3199c63796a06f7cfbbb4513515Paul Stewart const std::string &storage_identifier, 30b108318d9554032feee1249d51c961e4f90f4561Paul Stewart bool arp_gateway)); 31d48fa0c5531e2102d4f537e81b9f92afc2d60955Peter Qiu MOCK_METHOD2(CreateIPv6Config, 32d48fa0c5531e2102d4f537e81b9f92afc2d60955Peter Qiu DHCPConfigRefPtr(const std::string &device_name, 33d48fa0c5531e2102d4f537e81b9f92afc2d60955Peter Qiu const std::string &storage_identifier)); 341bdedf1296df51b2566c8d73299d52546167b971Darin Petkov 351bdedf1296df51b2566c8d73299d52546167b971Darin Petkov private: 361bdedf1296df51b2566c8d73299d52546167b971Darin Petkov DISALLOW_COPY_AND_ASSIGN(MockDHCPProvider); 3777cb681ab58c6623464a355e646138ab84d38573Darin Petkov}; 3877cb681ab58c6623464a355e646138ab84d38573Darin Petkov 3977cb681ab58c6623464a355e646138ab84d38573Darin Petkov} // namespace shill 4077cb681ab58c6623464a355e646138ab84d38573Darin Petkov 41675d0b0f04936050a357722f52dc078a3ab671d8Peter Qiu#endif // SHILL_DHCP_MOCK_DHCP_PROVIDER_H_ 42