//===-- DebuggerTest.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 "lldb/Core/Debugger.h" #include "Plugins/Platform/MacOSX/PlatformMacOSX.h" #include "Plugins/Platform/MacOSX/PlatformRemoteMacOSX.h" #include "TestingSupport/TestUtilities.h" #include "lldb/Host/FileSystem.h" #include "lldb/Host/HostInfo.h" #include "gtest/gtest.h" using namespace lldb; using namespace lldb_private; namespace { class DebuggerTest : public ::testing::Test { public: void SetUp() override { FileSystem::Initialize(); HostInfo::Initialize(); PlatformMacOSX::Initialize(); std::call_once(TestUtilities::g_debugger_initialize_flag, []() { Debugger::Initialize(nullptr); }); ArchSpec arch("x86_64-apple-macosx-"); Platform::SetHostPlatform( PlatformRemoteMacOSX::CreateInstance(true, &arch)); } void TearDown() override { PlatformMacOSX::Terminate(); HostInfo::Terminate(); FileSystem::Terminate(); } }; } // namespace TEST_F(DebuggerTest, TestSettings) { DebuggerSP debugger_sp = Debugger::CreateInstance(); EXPECT_TRUE(debugger_sp->SetUseColor(true)); EXPECT_TRUE(debugger_sp->GetUseColor()); FormatEntity::Entry format("foo"); EXPECT_TRUE(debugger_sp->SetStatuslineFormat(format)); EXPECT_EQ(debugger_sp->GetStatuslineFormat().string, "foo"); Debugger::Destroy(debugger_sp); }