diff options
Diffstat (limited to 'packages/Python/lldbsuite/test/lang/cpp/virtual')
| -rw-r--r-- | packages/Python/lldbsuite/test/lang/cpp/virtual/TestVirtual.py | 38 | 
1 files changed, 25 insertions, 13 deletions
| diff --git a/packages/Python/lldbsuite/test/lang/cpp/virtual/TestVirtual.py b/packages/Python/lldbsuite/test/lang/cpp/virtual/TestVirtual.py index bee148773f03..7356484e69a4 100644 --- a/packages/Python/lldbsuite/test/lang/cpp/virtual/TestVirtual.py +++ b/packages/Python/lldbsuite/test/lang/cpp/virtual/TestVirtual.py @@ -4,15 +4,19 @@ Test C++ virtual function and virtual inheritance.  from __future__ import print_function -import os, time +import os +import time  import re  import lldb  from lldbsuite.test.decorators import *  from lldbsuite.test.lldbtest import *  from lldbsuite.test import lldbutil +  def Msg(expr, val): -    return "'expression %s' matches the output (from compiled code): %s" % (expr, val) +    return "'expression %s' matches the output (from compiled code): %s" % ( +        expr, val) +  class CppVirtualMadness(TestBase): @@ -29,8 +33,9 @@ class CppVirtualMadness(TestBase):          self.source = 'main.cpp'          self.line = line_number(self.source, '// Set first breakpoint here.') -    @expectedFailureAll(compiler="icc", bugnumber="llvm.org/pr16808 lldb does not call the correct virtual function with icc.") -    @expectedFailureAll(oslist=['windows']) +    @expectedFailureAll( +        compiler="icc", +        bugnumber="llvm.org/pr16808 lldb does not call the correct virtual function with icc.")      def test_virtual_madness(self):          """Test that expression works correctly with virtual inheritance as well as virtual function."""          self.build() @@ -38,7 +43,7 @@ class CppVirtualMadness(TestBase):          # Bring the program to the point where we can issue a series of          # 'expression' command to compare against the golden output.          self.dbg.SetAsync(False) -         +          # Create a target by the debugger.          target = self.dbg.CreateTarget("a.out")          self.assertTrue(target, VALID_TARGET) @@ -48,18 +53,25 @@ class CppVirtualMadness(TestBase):          self.assertTrue(breakpoint, VALID_BREAKPOINT)          # Now launch the process, and do not stop at entry point. -        process = target.LaunchSimple (None, None, self.get_process_working_directory()) +        process = target.LaunchSimple( +            None, None, self.get_process_working_directory())          self.assertTrue(process, PROCESS_IS_VALID) -         +          self.assertTrue(process.GetState() == lldb.eStateStopped) -        thread = lldbutil.get_stopped_thread(process, lldb.eStopReasonBreakpoint) -        self.assertTrue(thread.IsValid(), "There should be a thread stopped due to breakpoint condition") +        thread = lldbutil.get_stopped_thread( +            process, lldb.eStopReasonBreakpoint) +        self.assertTrue( +            thread.IsValid(), +            "There should be a thread stopped due to breakpoint condition")          # First, capture the golden output from the program itself.          golden = thread.GetFrameAtIndex(0).FindVariable("golden") -        self.assertTrue(golden.IsValid(), "Encountered an error reading the process's golden variable") +        self.assertTrue( +            golden.IsValid(), +            "Encountered an error reading the process's golden variable")          error = lldb.SBError() -        golden_str = process.ReadCStringFromMemory(golden.AddressOf().GetValueAsUnsigned(), 4096, error); +        golden_str = process.ReadCStringFromMemory( +            golden.AddressOf().GetValueAsUnsigned(), 4096, error)          self.assertTrue(error.Success())          self.assertTrue("c_as_C" in golden_str) @@ -84,7 +96,7 @@ class CppVirtualMadness(TestBase):              self.runCmd("expression %s" % my_expr)              output = self.res.GetOutput() -             +              # The expression output must match the oracle.              self.expect(output, Msg(my_expr, val), exe=False, -                substrs = [val]) +                        substrs=[val]) | 
