X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=test%2Flib%2FServer.cpp;h=af6e41ba63d5a1f010f3c9ca0de0aef13bd2d989;hb=cf5fafcbbfd88990693baaa8b10838fd36598f5f;hp=8666b690ee602d5eb54a9ec8c843cbe24748f7f5;hpb=12db645b4866a01c7c2bd0baba3be221e8d16ae9;p=m6w6%2Flibmemcached diff --git a/test/lib/Server.cpp b/test/lib/Server.cpp index 8666b690..af6e41ba 100644 --- a/test/lib/Server.cpp +++ b/test/lib/Server.cpp @@ -39,11 +39,16 @@ static inline void pushArg(vector &arr, const string &arg) { optional Server::handleArg(vector &arr, const string &arg, const arg_func_t &next_arg) { pushArg(arr, arg); - if (arg == "-p" || arg == "--port") { + if (arg == "-U" || arg == "--udp-port") { + auto port = next_arg(arg); + pushArg(arr, port); + pushArg(arr, "-p"); + pushArg(arr, port); + socket_or_port = stoi(port); + return port; + } else if (arg == "-p" || arg == "--port") { auto port = next_arg(arg); pushArg(arr, port); -// pushArg(arr, "-U"); -// pushArg(arr, port); socket_or_port = stoi(port); return port; } else if (arg == "-s" || arg == "--unix-socket") { @@ -180,8 +185,19 @@ bool Server::check() { bool Server::wait(int flags) { if (pid && pid == waitpid(pid, &status, flags)) { - if (drain().length()) { - cerr << "Ouput of " << *this << ":\n" << output << endl; + if (drain().length() && output != "Signal handled: Terminated.\n") { + cerr << "Output of " << *this << ":\n"; + + istringstream iss{output}; + string line; + + while (getline(iss, line)) { + cerr << " " << line << "\n"; + } + + if (output.back() != '\n') { + cerr << endl; + } output.clear(); } pid = 0;