summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/api/log/TestAPILog.py
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/api/log/TestAPILog.py')
-rw-r--r--lldb/packages/Python/lldbsuite/test/api/log/TestAPILog.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/api/log/TestAPILog.py b/lldb/packages/Python/lldbsuite/test/api/log/TestAPILog.py
new file mode 100644
index 00000000000..450d62029d4
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/api/log/TestAPILog.py
@@ -0,0 +1,48 @@
+"""
+Test API logging.
+"""
+
+import re
+
+import lldb
+import lldbsuite.test.lldbutil as lldbutil
+from lldbsuite.test.lldbtest import *
+
+
+class APILogTestCase(TestBase):
+
+ mydir = TestBase.compute_mydir(__file__)
+
+ NO_DEBUG_INFO_TESTCASE = True
+
+ def test_api_log(self):
+ """Test API logging"""
+ logfile = os.path.join(self.getBuildDir(), "api-log.txt")
+
+ def cleanup():
+ if os.path.exists(logfile):
+ os.unlink(logfile)
+
+ self.addTearDownHook(cleanup)
+ self.expect("log enable lldb api -f {}".format(logfile))
+
+ self.dbg.SetDefaultArchitecture(None)
+ self.dbg.GetScriptingLanguage(None)
+ target = self.dbg.CreateTarget(None)
+
+ print(logfile)
+ with open(logfile, 'r') as f:
+ log = f.read()
+
+ # Find the debugger addr.
+ debugger_addr = re.findall(
+ r"lldb::SBDebugger::GetScriptingLanguage\(const char \*\) \(0x([0-9a-fA-F]+),",
+ log)[0]
+
+ get_scripting_language = 'lldb::ScriptLanguage lldb::SBDebugger::GetScriptingLanguage(const char *) (0x{}, "")'.format(
+ debugger_addr)
+ create_target = 'lldb::SBTarget lldb::SBDebugger::CreateTarget(const char *) (0x{}, "")'.format(
+ debugger_addr)
+
+ self.assertTrue(get_scripting_language in log)
+ self.assertTrue(create_target in log)
OpenPOWER on IntegriCloud