Author: Raphael Isemann Date: 2020-04-10T13:38:45+02:00 New Revision: a0c6ebd58fabd4d42fce2233ee4c28e7febfe62f
URL: https://github.com/llvm/llvm-project/commit/a0c6ebd58fabd4d42fce2233ee4c28e7febfe62f DIFF: https://github.com/llvm/llvm-project/commit/a0c6ebd58fabd4d42fce2233ee4c28e7febfe62f.diff LOG: [lldb] Refactor TestFixIts so that most of it can run on aarch64-linux The final function call to `test_X` is failing on aarch64-linux with SIGILL. Function calls to previous expressions seem to just not work on aarch64-linux but I don't see another way to test the multiple-run Fix-Its. This patch refactors the test that the skipIf for aarch64 Linux only covers the part of the test that was added D77214. Added: Modified: lldb/test/API/commands/expression/fixits/TestFixIts.py Removed: ################################################################################ diff --git a/lldb/test/API/commands/expression/fixits/TestFixIts.py b/lldb/test/API/commands/expression/fixits/TestFixIts.py index b348e2dca2cc..4f1d974c753b 100644 --- a/lldb/test/API/commands/expression/fixits/TestFixIts.py +++ b/lldb/test/API/commands/expression/fixits/TestFixIts.py @@ -23,7 +23,6 @@ def test_with_dummy_target(self): self.assertEqual(result, lldb.eReturnStatusSuccessFinishResult, "The expression was successful.") self.assertTrue("Fix-it applied" in ret_val.GetError(), "Found the applied FixIt.") - @expectedFailureAll(archs=["aarch64"], oslist=["linux"]) def test_with_target(self): """Test calling expressions with errors that can be fixed by the FixIts.""" self.build() @@ -83,12 +82,22 @@ def test_with_target(self): error_string.find("my_pointer->second.a") != -1, "Fix was right") + # The final function call runs into SIGILL on aarch64-linux. + @expectedFailureAll(archs=["aarch64"], oslist=["linux"]) + def test_with_multiple_retries(self): + """Test calling expressions with errors that can be fixed by the FixIts.""" + self.build() + (target, process, self.thread, bkpt) = lldbutil.run_to_source_breakpoint(self, + 'Stop here to evaluate expressions', + lldb.SBFileSpec("main.cpp")) # Test repeatedly applying Fix-Its to expressions and reparsing them. multiple_runs_options = lldb.SBExpressionOptions() multiple_runs_options.SetAutoApplyFixIts(True) multiple_runs_options.SetTopLevel(True) + frame = self.thread.GetFrameAtIndex(0) + # An expression that needs two parse attempts with one Fix-It each # to be successfully parsed. two_runs_expr = """ _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits