Files
clang-p2996/lldb/unittests/tools/lldb-server/tests/TestBase.cpp
Pavel Labath 671d3e6318 llgs-tests: Make addition of new tests easier
Summary:
Adding a new test would require one to duplicate a significant part of
the existing test that we have. This attempts to reduce that by moving
some part of that code to the test fixture. The StandardStartupTest
fixture automatically starts up the server and connects it to the
client. I also add a more low-level TestBase fixture, which allows one
to start up the client and server in a custom way (I am going to need
this for the test I am writing).

Reviewers: eugene, zturner

Subscribers: lldb-commits, mgorny

Differential Revision: https://reviews.llvm.org/D41066

llvm-svn: 320809
2017-12-15 13:56:22 +00:00

37 lines
1.0 KiB
C++

//===-- TestBase.cpp --------------------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
#include "TestBase.h"
#include <cstdlib>
using namespace llgs_tests;
using namespace llvm;
std::string TestBase::getLogFileName() {
const auto *test_info =
::testing::UnitTest::GetInstance()->current_test_info();
assert(test_info);
const char *Dir = getenv("LOG_FILE_DIRECTORY");
if (!Dir)
return "";
if (!llvm::sys::fs::is_directory(Dir)) {
GTEST_LOG_(WARNING) << "Cannot access log directory: " << Dir;
return "";
}
SmallString<64> DirStr(Dir);
sys::path::append(DirStr, std::string("server-") +
test_info->test_case_name() + "-" +
test_info->name() + ".log");
return DirStr.str();
}