1import lldb 2from lldbsuite.test.lldbtest import * 3from lldbsuite.test.decorators import * 4from gdbclientutils import * 5 6 7class TestqOffsets(GDBRemoteTestBase): 8 9 class Responder(MockGDBServerResponder): 10 def qOffsets(self): 11 return 'Text=470000;Data=470000' 12 13 def setUp(self): 14 super(TestqOffsets, self).setUp() 15 self._initial_platform = lldb.DBG.GetSelectedPlatform() 16 17 def tearDown(self): 18 lldb.DBG.SetSelectedPlatform(self._initial_platform) 19 super(TestqOffsets, self).tearDown() 20 21 def test(self): 22 self.server.responder = TestqOffsets.Responder() 23 target = self.createTarget("qOffsets.yaml") 24 text = target.modules[0].FindSection(".text") 25 self.assertEquals(text.GetLoadAddress(target), lldb.LLDB_INVALID_ADDRESS) 26 27 process = self.connect(target) 28 self.assertEquals(text.GetLoadAddress(target), 0x471000) 29