xref: /aosp_15_r20/external/libbrillo/brillo/udev/mock_udev_device.h (revision 1a96fba65179ea7d3f56207137718607415c5953)
1*1a96fba6SXin Li // Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
2*1a96fba6SXin Li // Use of this source code is governed by a BSD-style license that can be
3*1a96fba6SXin Li // found in the LICENSE file.
4*1a96fba6SXin Li 
5*1a96fba6SXin Li #ifndef LIBBRILLO_BRILLO_UDEV_MOCK_UDEV_DEVICE_H_
6*1a96fba6SXin Li #define LIBBRILLO_BRILLO_UDEV_MOCK_UDEV_DEVICE_H_
7*1a96fba6SXin Li 
8*1a96fba6SXin Li #include <memory>
9*1a96fba6SXin Li 
10*1a96fba6SXin Li #include <brillo/brillo_export.h>
11*1a96fba6SXin Li #include <brillo/udev/udev_device.h>
12*1a96fba6SXin Li #include <gmock/gmock.h>
13*1a96fba6SXin Li 
14*1a96fba6SXin Li namespace brillo {
15*1a96fba6SXin Li 
16*1a96fba6SXin Li class BRILLO_EXPORT MockUdevDevice : public UdevDevice {
17*1a96fba6SXin Li  public:
18*1a96fba6SXin Li   MockUdevDevice() = default;
19*1a96fba6SXin Li   ~MockUdevDevice() override = default;
20*1a96fba6SXin Li 
21*1a96fba6SXin Li   MOCK_METHOD(std::unique_ptr<UdevDevice>, GetParent, (), (const, override));
22*1a96fba6SXin Li   MOCK_METHOD(std::unique_ptr<UdevDevice>,
23*1a96fba6SXin Li               GetParentWithSubsystemDeviceType,
24*1a96fba6SXin Li               (const char*, const char*),
25*1a96fba6SXin Li               (const, override));
26*1a96fba6SXin Li   MOCK_METHOD(bool, IsInitialized, (), (const, override));
27*1a96fba6SXin Li   MOCK_METHOD(uint64_t, GetMicrosecondsSinceInitialized, (), (const, override));
28*1a96fba6SXin Li   MOCK_METHOD(uint64_t, GetSequenceNumber, (), (const, override));
29*1a96fba6SXin Li   MOCK_METHOD(const char*, GetDevicePath, (), (const, override));
30*1a96fba6SXin Li   MOCK_METHOD(const char*, GetDeviceNode, (), (const, override));
31*1a96fba6SXin Li   MOCK_METHOD(dev_t, GetDeviceNumber, (), (const, override));
32*1a96fba6SXin Li   MOCK_METHOD(const char*, GetDeviceType, (), (const, override));
33*1a96fba6SXin Li   MOCK_METHOD(const char*, GetDriver, (), (const, override));
34*1a96fba6SXin Li   MOCK_METHOD(const char*, GetSubsystem, (), (const, override));
35*1a96fba6SXin Li   MOCK_METHOD(const char*, GetSysPath, (), (const, override));
36*1a96fba6SXin Li   MOCK_METHOD(const char*, GetSysName, (), (const, override));
37*1a96fba6SXin Li   MOCK_METHOD(const char*, GetSysNumber, (), (const, override));
38*1a96fba6SXin Li   MOCK_METHOD(const char*, GetAction, (), (const, override));
39*1a96fba6SXin Li   MOCK_METHOD(std::unique_ptr<UdevListEntry>,
40*1a96fba6SXin Li               GetDeviceLinksListEntry,
41*1a96fba6SXin Li               (),
42*1a96fba6SXin Li               (const, override));
43*1a96fba6SXin Li   MOCK_METHOD(std::unique_ptr<UdevListEntry>,
44*1a96fba6SXin Li               GetPropertiesListEntry,
45*1a96fba6SXin Li               (),
46*1a96fba6SXin Li               (const, override));
47*1a96fba6SXin Li   MOCK_METHOD(const char*, GetPropertyValue, (const char*), (const, override));
48*1a96fba6SXin Li   MOCK_METHOD(std::unique_ptr<UdevListEntry>,
49*1a96fba6SXin Li               GetTagsListEntry,
50*1a96fba6SXin Li               (),
51*1a96fba6SXin Li               (const, override));
52*1a96fba6SXin Li   MOCK_METHOD(std::unique_ptr<UdevListEntry>,
53*1a96fba6SXin Li               GetSysAttributeListEntry,
54*1a96fba6SXin Li               (),
55*1a96fba6SXin Li               (const, override));
56*1a96fba6SXin Li   MOCK_METHOD(const char*,
57*1a96fba6SXin Li               GetSysAttributeValue,
58*1a96fba6SXin Li               (const char*),
59*1a96fba6SXin Li               (const, override));
60*1a96fba6SXin Li   MOCK_METHOD(std::unique_ptr<UdevDevice>, Clone, (), (override));
61*1a96fba6SXin Li 
62*1a96fba6SXin Li  private:
63*1a96fba6SXin Li   DISALLOW_COPY_AND_ASSIGN(MockUdevDevice);
64*1a96fba6SXin Li };
65*1a96fba6SXin Li 
66*1a96fba6SXin Li }  // namespace brillo
67*1a96fba6SXin Li 
68*1a96fba6SXin Li #endif  // LIBBRILLO_BRILLO_UDEV_MOCK_UDEV_DEVICE_H_
69