[Lldb-commits] [lldb] r228659 - Add a test case for the launch via argdumper globbing mechanism

Enrico Granata egranata at apple.com
Tue Feb 10 20:24:14 PST 2015


The problem is that I ran the test case on my system before checking this in. So, it clearly worked on my system.

Is there any chance you could start debugging this and seeing where it fails? That may be a hint as to what is different between our setups.

Sent from my iPhone

> On Feb 10, 2015, at 7:33 PM, Ilia K <ki.stfu at gmail.com> wrote:
> 
> Hello,
> 
> These tests don't work on OS X. See http://reviews.llvm.org/rL228659.
> 
> Thanks,
> Ilia
> 
>> On 10 Feb 2015 06:17, "Enrico Granata" <egranata at apple.com> wrote:
>> Author: enrico
>> Date: Mon Feb  9 21:13:22 2015
>> New Revision: 228659
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=228659&view=rev
>> Log:
>> Add a test case for the launch via argdumper globbing mechanism
>> 
>> Added:
>>     lldb/trunk/test/functionalities/launch_with_glob/
>>     lldb/trunk/test/functionalities/launch_with_glob/Makefile
>>     lldb/trunk/test/functionalities/launch_with_glob/TestLaunchWithGlob.py
>>     lldb/trunk/test/functionalities/launch_with_glob/file1.txt
>>     lldb/trunk/test/functionalities/launch_with_glob/file2.txt
>>     lldb/trunk/test/functionalities/launch_with_glob/file3.txt
>>     lldb/trunk/test/functionalities/launch_with_glob/file4.txy
>>     lldb/trunk/test/functionalities/launch_with_glob/file5.tyx
>>     lldb/trunk/test/functionalities/launch_with_glob/main.cpp
>> 
>> Added: lldb/trunk/test/functionalities/launch_with_glob/Makefile
>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/launch_with_glob/Makefile?rev=228659&view=auto
>> ==============================================================================
>> --- lldb/trunk/test/functionalities/launch_with_glob/Makefile (added)
>> +++ lldb/trunk/test/functionalities/launch_with_glob/Makefile Mon Feb  9 21:13:22 2015
>> @@ -0,0 +1,5 @@
>> +LEVEL = ../../make
>> +
>> +CXX_SOURCES := main.cpp
>> +
>> +include $(LEVEL)/Makefile.rules
>> 
>> Added: lldb/trunk/test/functionalities/launch_with_glob/TestLaunchWithGlob.py
>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/launch_with_glob/TestLaunchWithGlob.py?rev=228659&view=auto
>> ==============================================================================
>> --- lldb/trunk/test/functionalities/launch_with_glob/TestLaunchWithGlob.py (added)
>> +++ lldb/trunk/test/functionalities/launch_with_glob/TestLaunchWithGlob.py Mon Feb  9 21:13:22 2015
>> @@ -0,0 +1,70 @@
>> +"""
>> +Test that argdumper is a viable launching strategy.
>> +"""
>> +import commands
>> +import lldb
>> +import os
>> +import time
>> +import unittest2
>> +from lldbtest import *
>> +import lldbutil
>> +
>> +class LaunchWithGlobTestCase(TestBase):
>> +
>> +    mydir = TestBase.compute_mydir(__file__)
>> +
>> +
>> +    @unittest2.skipUnless(sys.platform.startswith("darwin"), "requires Darwin")
>> +    @dsym_test
>> +    def test_with_dsym (self):
>> +        self.buildDsym()
>> +        self.do_test ()
>> +
>> +
>> +    @unittest2.skipUnless(sys.platform.startswith("darwin"), "requires Darwin")
>> +    @dwarf_test
>> +    def test_with_dwarf (self):
>> +        self.buildDwarf()
>> +        self.do_test ()
>> +
>> +    def do_test (self):
>> +        exe = os.path.join (os.getcwd(), "a.out")
>> +
>> +        self.runCmd("target create %s" % exe)
>> +
>> +        # Create the target
>> +        target = self.dbg.CreateTarget(exe)
>> +
>> +        # Create any breakpoints we need
>> +        breakpoint = target.BreakpointCreateBySourceRegex ('break here', lldb.SBFileSpec ("main.cpp", False))
>> +        self.assertTrue(breakpoint, VALID_BREAKPOINT)
>> +
>> +        self.runCmd("process launch -G true -w %s -- fi*.tx?" % (os.getcwd()))
>> +
>> +        process = self.process()
>> +
>> +        self.assertTrue(process.GetState() == lldb.eStateStopped,
>> +                        STOPPED_DUE_TO_BREAKPOINT)
>> +
>> +        thread = process.GetThreadAtIndex (0)
>> +
>> +        self.assertTrue (thread.IsValid(),
>> +                         "Process stopped at 'main' should have a valid thread");
>> +
>> +        stop_reason = thread.GetStopReason()
>> +
>> +        self.assertTrue (stop_reason == lldb.eStopReasonBreakpoint,
>> +                         "Thread in process stopped in 'main' should have a stop reason of eStopReasonBreakpoint");
>> +
>> +        self.expect("frame variable argv[1]", substrs=['file1.txt'])
>> +        self.expect("frame variable argv[2]", substrs=['file2.txt'])
>> +        self.expect("frame variable argv[3]", substrs=['file3.txt'])
>> +        self.expect("frame variable argv[4]", substrs=['file4.txy'])
>> +        self.expect("frame variable argv[5]", substrs=['file5.tyx'], matching=False)
>> +
>> +if __name__ == '__main__':
>> +    import atexit
>> +    lldb.SBDebugger.Initialize()
>> +    atexit.register(lambda: lldb.SBDebugger.Terminate())
>> +    unittest2.main()
>> +
>> 
>> Added: lldb/trunk/test/functionalities/launch_with_glob/file1.txt
>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/launch_with_glob/file1.txt?rev=228659&view=auto
>> ==============================================================================
>>     (empty)
>> 
>> Added: lldb/trunk/test/functionalities/launch_with_glob/file2.txt
>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/launch_with_glob/file2.txt?rev=228659&view=auto
>> ==============================================================================
>>     (empty)
>> 
>> Added: lldb/trunk/test/functionalities/launch_with_glob/file3.txt
>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/launch_with_glob/file3.txt?rev=228659&view=auto
>> ==============================================================================
>>     (empty)
>> 
>> Added: lldb/trunk/test/functionalities/launch_with_glob/file4.txy
>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/launch_with_glob/file4.txy?rev=228659&view=auto
>> ==============================================================================
>>     (empty)
>> 
>> Added: lldb/trunk/test/functionalities/launch_with_glob/file5.tyx
>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/launch_with_glob/file5.tyx?rev=228659&view=auto
>> ==============================================================================
>>     (empty)
>> 
>> Added: lldb/trunk/test/functionalities/launch_with_glob/main.cpp
>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/launch_with_glob/main.cpp?rev=228659&view=auto
>> ==============================================================================
>> --- lldb/trunk/test/functionalities/launch_with_glob/main.cpp (added)
>> +++ lldb/trunk/test/functionalities/launch_with_glob/main.cpp Mon Feb  9 21:13:22 2015
>> @@ -0,0 +1,5 @@
>> +int
>> +main (int argc, char const **argv)
>> +{
>> +    return 0; // break here
>> +}
>> 
>> 
>> _______________________________________________
>> lldb-commits mailing list
>> lldb-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20150210/1c80b7d9/attachment.html>


More information about the lldb-commits mailing list