Files
clang-p2996/lldb/test/API/api/log/TestAPILog.py
Dave Lee 4cc8f2a017 [lldb][tests] Automatically call compute_mydir (NFC)
Eliminate boilerplate of having each test manually assign to `mydir` by calling
`compute_mydir` in lldbtest.py.

Differential Revision: https://reviews.llvm.org/D128077
2022-06-17 14:34:49 -07:00

45 lines
1.3 KiB
Python

"""
Test API logging.
"""
import re
import lldb
import lldbsuite.test.lldbutil as lldbutil
from lldbsuite.test.lldbtest import *
class APILogTestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
def test_api_log(self):
"""Test API logging"""
logfile = self.getBuildArtifact("api-log.txt")
self.expect("log enable lldb api -f {}".format(logfile))
self.dbg.SetDefaultArchitecture(None)
self.dbg.GetScriptingLanguage(None)
target = self.dbg.CreateTarget(None)
self.assertTrue(os.path.isfile(logfile))
with open(logfile, 'r') as f:
log = f.read()
# Find the SBDebugger's address.
debugger_addr = re.findall(
r"lldb::SBDebugger::GetScriptingLanguage\([^)]*\) \(0x([0-9a-fA-F]+),",
log)
# Make sure we've found a match.
self.assertTrue(debugger_addr, log)
# Make sure the GetScriptingLanguage matches.
self.assertTrue(re.search(r'lldb::SBDebugger::GetScriptingLanguage\([^)]*\) \(0x{}, ""\)'.format(
debugger_addr[0]), log), log)
# Make sure the address matches.
self.assertTrue(re.search(r'lldb::SBDebugger::CreateTarget\([^)]*\) \(0x{}, ""\)'.format(
debugger_addr[0]), log), log)