blob: 5deee899255d0ec1fe5e2bf8c35c50e2d6aeb29c [file]
"""
Test lldb-dap launch request.
"""
import os
from lldbsuite.test.tools.lldb_dap.types import LaunchArgs
from lldbsuite.test.tools.lldb_dap 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')