blob: 9f062e0c23571143700dad1e911859622e5dde55 [file] [log] [blame]
// Copyright 2018 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SHILL_MOCK_DEVICE_H_
#define SHILL_MOCK_DEVICE_H_
#include <string>
#include <vector>
#include <base/memory/ref_counted.h>
#include <gmock/gmock.h>
#include "shill/device.h"
#include "shill/geolocation_info.h"
namespace shill {
class MockDevice : public Device {
public:
MockDevice(Manager* manager,
const std::string& link_name,
const std::string& address,
int interface_index);
MockDevice(const MockDevice&) = delete;
MockDevice& operator=(const MockDevice&) = delete;
~MockDevice() override;
MOCK_METHOD(void, Initialize, (), (override));
MOCK_METHOD(void,
Start,
(Error*, const EnabledStateChangedCallback&),
(override));
MOCK_METHOD(void,
Stop,
(Error*, const EnabledStateChangedCallback&),
(override));
MOCK_METHOD(void, SetEnabled, (bool), (override));
MOCK_METHOD(void,
SetEnabledPersistent,
(bool, Error*, const ResultCallback&),
(override));
MOCK_METHOD(void,
SetEnabledNonPersistent,
(bool, Error*, const ResultCallback&),
(override));
MOCK_METHOD(void, Scan, (Error*, const std::string&), (override));
MOCK_METHOD(bool, Load, (const StoreInterface*), (override));
MOCK_METHOD(bool, Save, (StoreInterface*), (override));
MOCK_METHOD(void, EnableIPv6Privacy, (), (override));
MOCK_METHOD(void, SetIsMultiHomed, (bool), (override));
MOCK_METHOD(bool, RestartPortalDetection, (), (override));
MOCK_METHOD(bool, RequestPortalDetection, (), (override));
MOCK_METHOD(uint64_t, GetReceiveByteCount, (), (override));
MOCK_METHOD(uint64_t, GetTransmitByteCount, (), (override));
MOCK_METHOD(bool,
IsConnectedToService,
(const ServiceRefPtr&),
(const, override));
MOCK_METHOD(Technology, technology, (), (const, override));
MOCK_METHOD(void, OnBeforeSuspend, (const ResultCallback&), (override));
MOCK_METHOD(void, OnDarkResume, (const ResultCallback&), (override));
MOCK_METHOD(void, OnAfterResume, (), (override));
MOCK_METHOD(void, OnConnectionUpdated, (), (override));
MOCK_METHOD(void, OnIPv6AddressChanged, (const IPAddress*), (override));
MOCK_METHOD(std::vector<GeolocationInfo>,
GetGeolocationObjects,
(),
(const, override));
MOCK_METHOD(void, OnIPv6DnsServerAddressesChanged, (), (override));
MOCK_METHOD(bool, StartConnectivityTest, (), (override));
MOCK_METHOD(const ConnectionRefPtr&, connection, (), (const, override));
MOCK_METHOD(void, UpdateBlackholeUserTraffic, (), (override));
MOCK_METHOD(void,
OnNeighborReachabilityEvent,
(const IPAddress&,
patchpanel::NeighborReachabilityEventSignal::Role,
patchpanel::NeighborReachabilityEventSignal::EventType),
(override));
};
} // namespace shill
#endif // SHILL_MOCK_DEVICE_H_