xref: /aosp_15_r20/external/libbrillo/brillo/process_mock.h (revision 1a96fba65179ea7d3f56207137718607415c5953)
1*1a96fba6SXin Li // Copyright (c) 2012 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_PROCESS_MOCK_H_
6*1a96fba6SXin Li #define LIBBRILLO_BRILLO_PROCESS_MOCK_H_
7*1a96fba6SXin Li 
8*1a96fba6SXin Li #include <string>
9*1a96fba6SXin Li 
10*1a96fba6SXin Li #include <base/files/file_path.h>
11*1a96fba6SXin Li #include <gmock/gmock.h>
12*1a96fba6SXin Li 
13*1a96fba6SXin Li #include "brillo/process.h"
14*1a96fba6SXin Li 
15*1a96fba6SXin Li namespace brillo {
16*1a96fba6SXin Li 
17*1a96fba6SXin Li class ProcessMock : public Process {
18*1a96fba6SXin Li  public:
ProcessMock()19*1a96fba6SXin Li   ProcessMock() {}
~ProcessMock()20*1a96fba6SXin Li   virtual ~ProcessMock() {}
21*1a96fba6SXin Li 
22*1a96fba6SXin Li   MOCK_METHOD(void, AddArg, (const std::string&), (override));
23*1a96fba6SXin Li   MOCK_METHOD(void, RedirectInput, (const std::string&), (override));
24*1a96fba6SXin Li   MOCK_METHOD(void, RedirectOutput, (const std::string&), (override));
25*1a96fba6SXin Li   MOCK_METHOD(void, RedirectUsingPipe, (int, bool), (override));
26*1a96fba6SXin Li   MOCK_METHOD(void, BindFd, (int, int), (override));
27*1a96fba6SXin Li   MOCK_METHOD(void, SetUid, (uid_t), (override));
28*1a96fba6SXin Li   MOCK_METHOD(void, SetGid, (gid_t), (override));
29*1a96fba6SXin Li   MOCK_METHOD(void, SetCapabilities, (uint64_t), (override));
30*1a96fba6SXin Li   MOCK_METHOD(void, ApplySyscallFilter, (const std::string&), (override));
31*1a96fba6SXin Li   MOCK_METHOD(void, EnterNewPidNamespace, (), (override));
32*1a96fba6SXin Li   MOCK_METHOD(void, SetInheritParentSignalMask, (bool), (override));
33*1a96fba6SXin Li   MOCK_METHOD(void, SetPreExecCallback, (const PreExecCallback&), (override));
34*1a96fba6SXin Li   MOCK_METHOD(void, SetSearchPath, (bool), (override));
35*1a96fba6SXin Li   MOCK_METHOD(int, GetPipe, (int), (override));
36*1a96fba6SXin Li   MOCK_METHOD(bool, Start, (), (override));
37*1a96fba6SXin Li   MOCK_METHOD(int, Wait, (), (override));
38*1a96fba6SXin Li   MOCK_METHOD(int, Run, (), (override));
39*1a96fba6SXin Li   MOCK_METHOD(pid_t, pid, (), (override));
40*1a96fba6SXin Li   MOCK_METHOD(bool, Kill, (int, int), (override));
41*1a96fba6SXin Li   MOCK_METHOD(void, Reset, (pid_t), (override));
42*1a96fba6SXin Li   MOCK_METHOD(bool, ResetPidByFile, (const std::string&), (override));
43*1a96fba6SXin Li   MOCK_METHOD(pid_t, Release, (), (override));
44*1a96fba6SXin Li   MOCK_METHOD(void, SetCloseUnusedFileDescriptors, (bool), (override));
45*1a96fba6SXin Li };
46*1a96fba6SXin Li 
47*1a96fba6SXin Li }  // namespace brillo
48*1a96fba6SXin Li 
49*1a96fba6SXin Li #endif  // LIBBRILLO_BRILLO_PROCESS_MOCK_H_
50