process-cpp
3.0.0
A simple convenience library for handling processes in C++11.
linux_process_test.cpp
Go to the documentation of this file.
1
/*
2
* Copyright © 2013 Canonical Ltd.
3
*
4
* This program is free software: you can redistribute it and/or modify it
5
* under the terms of the GNU Lesser General Public License version 3,
6
* as published by the Free Software Foundation.
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU Lesser General Public License for more details.
12
*
13
* You should have received a copy of the GNU Lesser General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*
16
* Authored by: Thomas Voß <thomas.voss@canonical.com>
17
*/
18
19
#include <
core/posix/fork.h
>
20
#include <
core/posix/this_process.h
>
21
22
#include <
core/posix/linux/proc/process/stat.h
>
23
#include <gtest/gtest.h>
24
25
TEST
(LinuxProcess, accessing_proc_stats_works)
26
{
27
auto
child =
core::posix::fork
(
28
[](){
while
(
true
);
return
core::posix::exit::Status::success
;},
29
core::posix::StandardStream::empty
);
30
31
core::posix::linux::proc::process::Stat
stat;
32
EXPECT_NO_THROW(child >> stat);
33
ASSERT_EQ(
core::posix::linux::proc::process::State::running
, stat.state);
34
}
fork.h
TEST
TEST(LinuxProcess, accessing_proc_stats_works)
Definition
linux_process_test.cpp:25
core::posix::exit::Status::success
@ success
Definition
exit.h:35
core::posix::linux::proc::process::State::running
@ running
Definition
state.h:38
core::posix::fork
CORE_POSIX_DLL_PUBLIC ChildProcess fork(const std::function< posix::exit::Status()> &main, const StandardStream &flags)
fork forks a new process and executes the provided main function in the newly forked process.
Definition
fork.cpp:57
core::posix::StandardStream::empty
@ empty
Definition
standard_stream.h:40
stat.h
core::posix::linux::proc::process::Stat
The Stat struct encapsulates status information about a process.
Definition
stat.h:42
this_process.h
tests
linux_process_test.cpp
Generated on
for process-cpp by
1.15.0