blob: b62276c25f28573d371a0d6e3c19722f19ea82f1 [file]
"""
Test lldb-dap launch request.
"""
import os
from lldbsuite.test.tools.lldb_dap.dap_types import LaunchArgs
from lldbsuite.test.tools.lldb_dap.lldb_dap_testcase import DAPTestCaseBase
class TestDAP_launch_sourcePath(DAPTestCaseBase):
"""
Tests the "sourcePath" will set the target.source-map.
"""
def test(self):
program = self.getBuildArtifact("a.out")
program_dir = os.path.dirname(program)
session = self.build_and_create_session()
process_event = session.launch(
LaunchArgs(program=program, sourcePath=program_dir)
)
session.verify_process_exited(after=process_event)
output = session.get_console()
self.assertTrue(output and len(output) > 0, "expect console output")
prefix = '(lldb) settings set target.source-map "." '
found = False
for line in output.splitlines():
if line.startswith(prefix):
found = True
quoted_path = f'"{program_dir}"'
self.assertEqual(
quoted_path,
line[len(prefix) :],
f"lldb-dap working dir {quoted_path} == {line[6:]}",
)
self.assertTrue(found, 'found "sourcePath" in console output')