diff options
| author | Med Ismail Bennani <medismail.bennani@gmail.com> | 2021-02-01 11:14:10 +0000 |
|---|---|---|
| committer | Med Ismail Bennani <medismail.bennani@gmail.com> | 2021-02-01 12:16:33 +0100 |
| commit | b8923c002207da449ec462ade468e27a651b1f91 (patch) | |
| tree | 04fcc3ad1469e6287df24665e0e37ecd6473c06f /lldb/test/API/python_api | |
| parent | 94fac81fccfef9917e94bed398781744fb82e159 (diff) | |
| download | llvm-b8923c002207da449ec462ade468e27a651b1f91.zip llvm-b8923c002207da449ec462ade468e27a651b1f91.tar.gz llvm-b8923c002207da449ec462ade468e27a651b1f91.tar.bz2 | |
[lldb/API] Expose Module::IsLoadedInTarget() to SB API (NFC)
This patch adds an `SBTarget::IsLoaded(const SBModule&) const` endpoint
to lldb's Scripting Bridge API. As the name suggests, it will allow the
user to know if the module is loaded in a specific target.
rdar://37957625
Differential Review: https://reviews.llvm.org/D95686
Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
Diffstat (limited to 'lldb/test/API/python_api')
| -rw-r--r-- | lldb/test/API/python_api/target/TestTargetAPI.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/lldb/test/API/python_api/target/TestTargetAPI.py b/lldb/test/API/python_api/target/TestTargetAPI.py index 12c9d9d..c444b44 100644 --- a/lldb/test/API/python_api/target/TestTargetAPI.py +++ b/lldb/test/API/python_api/target/TestTargetAPI.py @@ -489,3 +489,27 @@ class TargetAPITestCase(TestBase): target3 = self.dbg.CreateTargetWithFileAndTargetTriple(exe, target.GetTriple()) self.assertTrue(target3.IsValid()) + + @add_test_categories(['pyapi']) + def test_is_loaded(self): + """Exercise SBTarget.IsLoaded(SBModule&) API.""" + d = {'EXE': 'b.out'} + self.build(dictionary=d) + self.setTearDownCleanup(dictionary=d) + target = self.create_simple_target('b.out') + + self.assertFalse(target.IsLoaded(lldb.SBModule())) + + num_modules = target.GetNumModules() + for i in range(num_modules): + module = target.GetModuleAtIndex(i) + self.assertFalse(target.IsLoaded(module), "Target that isn't " + "running shouldn't have any module loaded.") + + process = target.LaunchSimple(None, None, + self.get_process_working_directory()) + + for i in range(num_modules): + module = target.GetModuleAtIndex(i) + self.assertTrue(target.IsLoaded(module), "Running the target should " + "have loaded its modules.") |
