OpenVPN 3 Core Library
Loading...
Searching...
No Matches
test_pipe.cpp
Go to the documentation of this file.
1
#include "
test_common.hpp
"
2
3
#include <
openvpn/common/string.hpp
>
4
#include <
openvpn/common/process.hpp
>
5
6
using namespace
openvpn
;
7
8
TEST
(misc, pipe)
9
{
10
RedirectPipe::InOut
io;
11
12
{
13
Argv
argv;
14
io.
in
=
"one\ntwo\nthree\nfour\nfive\nsix\nseven\neight\nnine\nten\n"
;
15
argv.emplace_back(
"sort"
);
16
argv.emplace_back(
"-u"
);
17
// OPENVPN_LOG(argv.to_string());
18
const
int
status =
system_cmd
(
"/usr/bin/sort"
, argv,
nullptr
, io, 0,
nullptr
);
19
20
ASSERT_EQ(0, status) <<
"bad sort status="
<< status <<
" stderr="
<< io.
err
;
21
22
const
std::string
expected
=
"eight\nfive\nfour\nnine\none\nseven\nsix\nten\nthree\ntwo\n"
;
23
ASSERT_EQ(io.
out
,
expected
) <<
"bad sort EXPECTED:\n"
24
<<
expected
<<
"ACTUAL:\n"
25
<< io.
out
;
26
}
27
}
openvpn::Argv
Definition
argv.hpp:23
openvpn
Definition
ovpncli.cpp:97
openvpn::system_cmd
int system_cmd(const std::string &cmd, const Argv &argv, RedirectBase *redir, const Environ *env, const sigset_t *sigmask)
Definition
process.hpp:90
process.hpp
string.hpp
openvpn::RedirectPipe::InOut
Definition
redir.hpp:207
openvpn::RedirectPipe::InOut::out
std::string out
Definition
redir.hpp:209
openvpn::RedirectPipe::InOut::in
std::string in
Definition
redir.hpp:208
openvpn::RedirectPipe::InOut::err
std::string err
Definition
redir.hpp:210
test_common.hpp
expected
const std::string expected
Definition
test_format.cpp:32
TEST
TEST(misc, pipe)
Definition
test_pipe.cpp:8
test
unittests
test_pipe.cpp
Generated by
1.9.8