diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2017-01-02 19:26:05 +0000 | 
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2017-01-02 19:26:05 +0000 | 
| commit | 14f1b3e8826ce43b978db93a62d1166055db5394 (patch) | |
| tree | 0a00ad8d3498783fe0193f3b656bca17c4c8697d /packages/Python/lldbsuite/test/expression_command/macros | |
| parent | 4ee8c119c71a06dcad1e0fecc8c675e480e59337 (diff) | |
Notes
Diffstat (limited to 'packages/Python/lldbsuite/test/expression_command/macros')
| -rw-r--r-- | packages/Python/lldbsuite/test/expression_command/macros/TestMacros.py | 95 | 
1 files changed, 70 insertions, 25 deletions
| diff --git a/packages/Python/lldbsuite/test/expression_command/macros/TestMacros.py b/packages/Python/lldbsuite/test/expression_command/macros/TestMacros.py index 939d2e45d7d5..70b862bf4867 100644 --- a/packages/Python/lldbsuite/test/expression_command/macros/TestMacros.py +++ b/packages/Python/lldbsuite/test/expression_command/macros/TestMacros.py @@ -6,13 +6,21 @@ from lldbsuite.test.decorators import *  from lldbsuite.test.lldbtest import *  from lldbsuite.test import lldbutil +  class TestMacros(TestBase):      mydir = TestBase.compute_mydir(__file__) -    @expectedFailureAll(compiler="clang", bugnumber="clang does not emit .debug_macro[.dwo] sections.") -    @expectedFailureAll(debug_info="dwo", bugnumber="GCC produces multiple .debug_macro.dwo sections and the spec is unclear as to what it means") -    @expectedFailureAll(hostoslist=["windows"], compiler="gcc", triple='.*-android') +    @expectedFailureAll( +        compiler="clang", +        bugnumber="clang does not emit .debug_macro[.dwo] sections.") +    @expectedFailureAll( +        debug_info="dwo", +        bugnumber="GCC produces multiple .debug_macro.dwo sections and the spec is unclear as to what it means") +    @expectedFailureAll( +        hostoslist=["windows"], +        compiler="gcc", +        triple='.*-android')      def test_expr_with_macros(self):          self.build() @@ -25,7 +33,7 @@ class TestMacros(TestBase):          # Get the path of the executable          cwd = os.getcwd()          exe_file = "a.out" -        exe_path  = os.path.join(cwd, exe_file) +        exe_path = os.path.join(cwd, exe_file)          # Load the executable          target = self.dbg.CreateTarget(exe_path) @@ -33,51 +41,78 @@ class TestMacros(TestBase):          # Set breakpoints          bp1 = target.BreakpointCreateBySourceRegex("Break here", src_file_spec) -        self.assertTrue(bp1.IsValid() and bp1.GetNumLocations() >= 1, VALID_BREAKPOINT) +        self.assertTrue( +            bp1.IsValid() and bp1.GetNumLocations() >= 1, +            VALID_BREAKPOINT)          # Launch the process -        process = target.LaunchSimple(None, None, self.get_process_working_directory()) +        process = target.LaunchSimple( +            None, None, self.get_process_working_directory())          self.assertTrue(process.IsValid(), PROCESS_IS_VALID)          # Get the thread of the process -        self.assertTrue(process.GetState() == lldb.eStateStopped, PROCESS_STOPPED) -        thread = lldbutil.get_stopped_thread(process, lldb.eStopReasonBreakpoint) +        self.assertTrue( +            process.GetState() == lldb.eStateStopped, +            PROCESS_STOPPED) +        thread = lldbutil.get_stopped_thread( +            process, lldb.eStopReasonBreakpoint)          # Get frame for current thread          frame = thread.GetSelectedFrame()          result = frame.EvaluateExpression("MACRO_1") -        self.assertTrue(result.IsValid() and result.GetValue() == "100", "MACRO_1 = 100") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "100", +            "MACRO_1 = 100")          result = frame.EvaluateExpression("MACRO_2") -        self.assertTrue(result.IsValid() and result.GetValue() == "200", "MACRO_2 = 200") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "200", +            "MACRO_2 = 200")          result = frame.EvaluateExpression("ONE") -        self.assertTrue(result.IsValid() and result.GetValue() == "1", "ONE = 1") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "1", +            "ONE = 1")          result = frame.EvaluateExpression("TWO") -        self.assertTrue(result.IsValid() and result.GetValue() == "2", "TWO = 2") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "2", +            "TWO = 2")          result = frame.EvaluateExpression("THREE") -        self.assertTrue(result.IsValid() and result.GetValue() == "3", "THREE = 3") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "3", +            "THREE = 3")          result = frame.EvaluateExpression("FOUR") -        self.assertTrue(result.IsValid() and result.GetValue() == "4", "FOUR = 4") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "4", +            "FOUR = 4")          result = frame.EvaluateExpression("HUNDRED") -        self.assertTrue(result.IsValid() and result.GetValue() == "100", "HUNDRED = 100") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "100", +            "HUNDRED = 100")          result = frame.EvaluateExpression("THOUSAND") -        self.assertTrue(result.IsValid() and result.GetValue() == "1000", "THOUSAND = 1000") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "1000", +            "THOUSAND = 1000")          result = frame.EvaluateExpression("MILLION") -        self.assertTrue(result.IsValid() and result.GetValue() == "1000000", "MILLION = 1000000") +        self.assertTrue(result.IsValid() and result.GetValue() +                        == "1000000", "MILLION = 1000000")          result = frame.EvaluateExpression("MAX(ONE, TWO)") -        self.assertTrue(result.IsValid() and result.GetValue() == "2", "MAX(ONE, TWO) = 2") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "2", +            "MAX(ONE, TWO) = 2")          result = frame.EvaluateExpression("MAX(THREE, TWO)") -        self.assertTrue(result.IsValid() and result.GetValue() == "3", "MAX(THREE, TWO) = 3") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "3", +            "MAX(THREE, TWO) = 3")          # Get the thread of the process          thread.StepOver() @@ -86,10 +121,14 @@ class TestMacros(TestBase):          frame = thread.GetSelectedFrame()          result = frame.EvaluateExpression("MACRO_2") -        self.assertTrue(result.GetError().Fail(), "Printing MACRO_2 fails in the mail file") +        self.assertTrue( +            result.GetError().Fail(), +            "Printing MACRO_2 fails in the mail file")          result = frame.EvaluateExpression("FOUR") -        self.assertTrue(result.GetError().Fail(), "Printing FOUR fails in the main file") +        self.assertTrue( +            result.GetError().Fail(), +            "Printing FOUR fails in the main file")          thread.StepInto() @@ -97,14 +136,20 @@ class TestMacros(TestBase):          frame = thread.GetSelectedFrame()          result = frame.EvaluateExpression("ONE") -        self.assertTrue(result.IsValid() and result.GetValue() == "1", "ONE = 1") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "1", +            "ONE = 1")          result = frame.EvaluateExpression("MAX(ONE, TWO)") -        self.assertTrue(result.IsValid() and result.GetValue() == "2", "MAX(ONE, TWO) = 2") +        self.assertTrue( +            result.IsValid() and result.GetValue() == "2", +            "MAX(ONE, TWO) = 2")          # This time, MACRO_1 and MACRO_2 are not visible.          result = frame.EvaluateExpression("MACRO_1") -        self.assertTrue(result.GetError().Fail(), "Printing MACRO_1 fails in the header file") +        self.assertTrue(result.GetError().Fail(), +                        "Printing MACRO_1 fails in the header file")          result = frame.EvaluateExpression("MACRO_2") -        self.assertTrue(result.GetError().Fail(), "Printing MACRO_2 fails in the header file") +        self.assertTrue(result.GetError().Fail(), +                        "Printing MACRO_2 fails in the header file") | 
