]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - packages/Python/lldbsuite/test/lang/objc/objc++/TestObjCXX.py
Vendor import of lldb trunk r338150:
[FreeBSD/FreeBSD.git] / packages / Python / lldbsuite / test / lang / objc / objc++ / TestObjCXX.py
1 """
2 Make sure that ivars of Objective-C++ classes are visible in LLDB.
3 """
4
5 from __future__ import print_function
6
7
8 import os
9 import time
10 import lldb
11 from lldbsuite.test.decorators import *
12 from lldbsuite.test.lldbtest import *
13 from lldbsuite.test import lldbutil
14
15
16 class ObjCXXTestCase(TestBase):
17
18     mydir = TestBase.compute_mydir(__file__)
19
20     @skipUnlessDarwin
21     def test_break(self):
22         """Test ivars of Objective-C++ classes"""
23         if self.getArchitecture() == 'i386':
24             self.skipTest("requires Objective-C 2.0 runtime")
25
26         self.build()
27         exe = self.getBuildArtifact("a.out")
28         self.runCmd("file " + exe, CURRENT_EXECUTABLE_SET)
29
30         lldbutil.run_break_set_by_source_regexp(
31             self, 'breakpoint 1', num_expected_locations=1)
32
33         self.runCmd("run", RUN_SUCCEEDED)
34
35         self.expect("expr f->f", "Found ivar in class",
36                     substrs=["= 3"])