Files
clang-p2996/lldb/test/API/qemu/TestQemuAPI.py
Pavel Labath 1dc39378c4 [lldb/qemu] Stub out process info functions
These functions return the information about the host process (so they
show the executable as "qemu" and have the "wrong" architecture), which
isn't useful and can confuse lldb.

We could theoretically try to identify which host processes are running
an emulator, and translate the process information, but that would be
tricky to implement, and the usefulness of it would be fairly limited as
qemu does not support attaching to a running process.
2022-10-28 09:17:53 +02:00

32 lines
1.0 KiB
Python

import lldb
import os
from lldbsuite.test.lldbtest import *
from lldbsuite.test.decorators import *
@skipIfRemote
class TestQemuAPI(TestBase):
NO_DEBUG_INFO_TESTCASE = True
def test_file_api(self):
qemu = lldb.SBPlatform("qemu-user")
host = lldb.SBPlatform.GetHostPlatform()
target = self.getBuildArtifact("target.c")
main_c = lldb.SBFileSpec(self.getSourcePath("main.c"))
self.assertSuccess(qemu.Put(main_c, lldb.SBFileSpec(target)))
self.assertTrue(os.path.exists(target))
self.assertEqual(qemu.GetFilePermissions(target),
host.GetFilePermissions(target))
self.assertSuccess(qemu.MakeDirectory(
self.getBuildArtifact("target_dir")))
self.assertTrue(os.path.isdir(self.getBuildArtifact("target_dir")))
def test_process_api(self):
self.dbg.SetCurrentPlatform("qemu-user")
self.expect("platform process list",
substrs=['no processes were found on the "qemu-user" platform'],
error=True)