brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.1 KiB · 4b7d3aa Raw
61 lines · python
1import lldb2from lldbsuite.test.decorators import *3from lldbsuite.test.lldbtest import *4from lldbsuite.test import lldbutil5 6 7class TestCase(TestBase):8    NO_DEBUG_INFO_TESTCASE = True9 10    def run_class_tests(self):11        # Expression not referencing context class.12        self.expect_expr("1 + 1", result_type="int", result_value="2")13        # Referencing context class.14        # FIXME: This and the expression below should return const types.15        self.expect_expr("member", result_type="int", result_value="3")16        # Check the type of context class.17        self.expect_expr("this", result_type="ContextClass *")18 19    def test_member_func(self):20        self.build()21        lldbutil.run_to_source_breakpoint(22            self, "// break in function in class.", lldb.SBFileSpec("main.cpp")23        )24        self.run_class_tests()25 26    def test_templated_member_func(self):27        self.build()28        lldbutil.run_to_source_breakpoint(29            self,30            "// break in templated function in class.",31            lldb.SBFileSpec("main.cpp"),32        )33        self.run_class_tests()34 35    def run_template_class_tests(self):36        # Expression not referencing context class.37        self.expect_expr("1 + 1", result_type="int", result_value="2")38        # Referencing context class.39        # FIXME: This and the expression below should return const types.40        self.expect_expr("member", result_type="int", result_value="4")41        # Check the type of context class.42        self.expect_expr("this", result_type="TemplatedContextClass<int> *")43 44    def test_template_member_func(self):45        self.build()46        lldbutil.run_to_source_breakpoint(47            self,48            "// break in function in templated class.",49            lldb.SBFileSpec("main.cpp"),50        )51        self.run_template_class_tests()52 53    def test_template_templated_member_func(self):54        self.build()55        lldbutil.run_to_source_breakpoint(56            self,57            "// break in templated function in templated class.",58            lldb.SBFileSpec("main.cpp"),59        )60        self.run_template_class_tests()61