36 lines · python
1"""Test that inline functions from modules are imported correctly"""2 3 4import lldb5from lldbsuite.test.decorators import *6from lldbsuite.test.lldbtest import *7from lldbsuite.test import lldbutil8 9 10class ModulesInlineFunctionsTestCase(TestBase):11 @add_test_categories(["gmodules"])12 @skipIf(macos_version=["<", "10.12"])13 def test_expr(self):14 self.build()15 exe = self.getBuildArtifact("a.out")16 self.runCmd("file " + exe, CURRENT_EXECUTABLE_SET)17 18 # Break inside the foo function which takes a bar_ptr argument.19 lldbutil.run_to_source_breakpoint(20 self, "// Set breakpoint here.", lldb.SBFileSpec("main.m")21 )22 23 self.runCmd(24 'settings set target.clang-module-search-paths "'25 + self.getSourceDir()26 + '"'27 )28 29 self.expect(30 "expr @import myModule; 3",31 VARIABLES_DISPLAYED_CORRECTLY,32 substrs=["int", "3"],33 )34 35 self.expect("expr isInline(2)", VARIABLES_DISPLAYED_CORRECTLY, substrs=["4"])36