[Lldb-commits] [lldb] r240638 - Enable TestInferiorCrashing and TestRecursiveInferior on android

Pavel Labath labath at google.com
Thu Jun 25 05:57:36 PDT 2015


Author: labath
Date: Thu Jun 25 07:57:35 2015
New Revision: 240638

URL: http://llvm.org/viewvc/llvm-project?rev=240638&view=rev
Log:
Enable TestInferiorCrashing and TestRecursiveInferior on android

Summary:
the original bug was fixed (a rogue breakpoint messing up inferior data structures) and the tests
seems to pass now. Since android has a default SEGV handler, I have had to alter the test
expectation in this case.

Test Plan: Tests pass on android arm.

Reviewers: tberghammer

Subscribers: tberghammer, aemerson, lldb-commits

Differential Revision: http://reviews.llvm.org/D10733

Modified:
    lldb/trunk/test/functionalities/inferior-crashing/TestInferiorCrashing.py
    lldb/trunk/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py

Modified: lldb/trunk/test/functionalities/inferior-crashing/TestInferiorCrashing.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/inferior-crashing/TestInferiorCrashing.py?rev=240638&r1=240637&r2=240638&view=diff
==============================================================================
--- lldb/trunk/test/functionalities/inferior-crashing/TestInferiorCrashing.py (original)
+++ lldb/trunk/test/functionalities/inferior-crashing/TestInferiorCrashing.py Thu Jun 25 07:57:35 2015
@@ -68,7 +68,6 @@ class CrashingInferiorTestCase(TestBase)
         self.inferior_crashing_step_after_break()
 
     @skipIfFreeBSD # llvm.org/pr16684
-    @expectedFailureAndroid("llvm.org/pr23694")
     def test_inferior_crashing_step_after_break_dwarf(self):
         """Test that lldb functions correctly after stepping through a crash."""
         self.buildDwarf()
@@ -215,6 +214,8 @@ class CrashingInferiorTestCase(TestBase)
         expected_state = 'exited' # Provide the exit code.
         if self.platformIsDarwin():
             expected_state = 'stopped' # TODO: Determine why 'next' and 'continue' have no effect after a crash.
+        elif re.match(".*-.*-.*-android", self.dbg.GetSelectedPlatform().GetTriple()):
+            expected_state = 'stopped' # android has a default SEGV handler, which will re-raise the signal, so we come up stopped again
 
         self.expect("next",
             substrs = ['Process', expected_state])

Modified: lldb/trunk/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py?rev=240638&r1=240637&r2=240638&view=diff
==============================================================================
--- lldb/trunk/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py (original)
+++ lldb/trunk/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py Thu Jun 25 07:57:35 2015
@@ -68,7 +68,6 @@ class CrashingRecursiveInferiorTestCase(
         self.recursive_inferior_crashing_step_after_break()
 
     @skipIfFreeBSD # llvm.org/pr16684
-    @expectedFailureAndroid("llvm.org/pr23694")
     def test_recursive_inferior_crashing_step_after_break_dwarf(self):
         """Test that lldb functions correctly after stepping through a crash."""
         self.buildDwarf()
@@ -212,6 +211,9 @@ class CrashingRecursiveInferiorTestCase(
         expected_state = 'exited' # Provide the exit code.
         if self.platformIsDarwin():
             expected_state = 'stopped' # TODO: Determine why 'next' and 'continue' have no effect after a crash.
+        elif re.match(".*-.*-.*-android", self.dbg.GetSelectedPlatform().GetTriple()):
+            expected_state = 'stopped' # android has a default SEGV handler, which will re-raise the signal, so we come up stopped again
+
 
         self.expect("next",
             substrs = ['Process', expected_state])





More information about the lldb-commits mailing list