blob: d28375b220d8215484130d7375fec04263ca2763 [file] [edit]
//===-- TestUtils.cpp -----------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#include "TestUtils.h"
#include "lldb/Core/PluginManager.h"
using namespace lldb;
using namespace lldb_private;
MockScriptInterpreterPython::MockScriptInterpreterPython(Debugger &debugger)
: ScriptInterpreter(debugger, lldb::ScriptLanguage::eScriptLanguagePython) {
}
void MockScriptInterpreterPython::Initialize() {
PluginManager::RegisterPlugin(GetPluginNameStatic(),
GetPluginDescriptionStatic(),
lldb::eScriptLanguagePython, CreateInstance);
}
void MockScriptInterpreterPython::Terminate() {
PluginManager::UnregisterPlugin(CreateInstance);
}
LLDB_PLUGIN_DEFINE(MockScriptInterpreterPython)
std::string lldb_private::CreateFile(llvm::StringRef filename,
llvm::SmallString<128> parent_dir) {
llvm::SmallString<128> path(parent_dir);
llvm::sys::path::append(path, filename);
int fd;
std::error_code ret = llvm::sys::fs::openFileForWrite(path, fd);
assert(!ret && "Failed to create test file.");
(void)ret;
::close(fd);
return path.c_str();
}