Skip to content
  1. Sep 22, 2010
  2. Sep 21, 2010
    • Johnny Chen's avatar
      Added a more complex test case of breakpoint commands, which executes a sequence · ea88e943
      Johnny Chen authored
      of 'breakpoint command add/list/remove' commands to set breakpoint callbacks,
      list them, and then remove one.
      
      Modified the lldbtest.TestBase.expect() method to add two additional keyword
      arguments:
      
      o matching (default to True), which, if set to False, reverses the semantics of
        'expect' to 'expect not'
      
      o patterns (default to None), which specifies a list of regexp patterns to match
        against the output from running the command
      
      TestBreakpointCommand.py uses the matching=False and the patterns=[...] expect()
      API.
      
      llvm-svn: 114480
      ea88e943
  3. Sep 18, 2010
  4. Sep 16, 2010
    • Johnny Chen's avatar
      Added a test case for the settings command which sets process.output-path and · 2fcc0e55
      Johnny Chen authored
      checks that the launched process writes its standard output there.
      
      llvm-svn: 114102
      2fcc0e55
    • Johnny Chen's avatar
      Provided a mechanism for the test class to cleanup after itself once it's done. · 1a9f4dd5
      Johnny Chen authored
      This will remove the confusion experienced when previous test runs left some
      files (both intermediate or by-product as a result of the test).
      
      lldbtest.TestBase defines a classmethod tearDownClass(cls) which invokes the
      platform-specific cleanup() function as defined by the plugin; after that, it
      invokes a subclass-specific function classCleanup(cls) if defined; and, finally,
      it restores the old working directory.
      
      An example of classCleanup(cls) is in settings/TestSettings.py:
      
          @classmethod
          def classCleanup(cls):
              system(["/bin/sh", "-c", "rm output.txt"])
      
      where it deletes the by-product "output.txt" as a result of running a.out.
      
      llvm-svn: 114058
      1a9f4dd5
  5. Sep 15, 2010
  6. Sep 13, 2010
    • Johnny Chen's avatar
      Extend the build mechanism to allow for specifying the compiler used to build · 1394a4b7
      Johnny Chen authored
      the binaries.
      
      If the build* function is passed the compiler argument, for example, 'llvm-gcc',
      it is passed as a make variable to the make command.  Otherwise, we check the
      LLDB_CC environment variable; if it is defined, it is passed as a make variable
      to the make command.
      
      If neither the compiler keyword argument nor the LLDB_CC environment variable is
      specified, no CC make variable is passed to the make command.  The Makefile gets
      to define the default CC being used.
      
      --------------------------------------------------------------------------------
      Example usage follows:
      
      o Via the keyword argument:
      
      class ArrayTypesTestCase(TestBase):
      
          mydir = "array_types"
      
          @unittest2.skipUnless(sys.platform.startswith("darwin"), "requires Darwin")
          def test_with_dsym_and_run_command(self):
              """Test 'frame variable var_name' on some variables with array types."""
              self.buildDsym(compiler='llvm-gcc')
              self.array_types()
      ...
      
      o Via LLDB_CC environment variable:
      
      $ LLDB_CC=llvm-gcc ./dotest.py -v -t array_types
      ----------------------------------------------------------------------
      Collected 4 tests
      
      test_with_dsym_and_python_api (TestArrayTypes.ArrayTypesTestCase)
      Use Python APIs to inspect variables with array types. ... 
      os command: [['/bin/sh', '-c', 'make clean; make MAKE_DSYM=YES CC=llvm-gcc']]
      output: rm -rf "a.out" "a.out.dSYM"  main.o main.d
      llvm-gcc -arch x86_64 -gdwarf-2 -O0 -arch x86_64 -gdwarf-2 -O0  -c -o main.o main.c
      llvm-gcc -arch x86_64 -gdwarf-2 -O0  main.o -o "a.out"
      /usr/bin/dsymutil  -o "a.out.dSYM" "a.out"
      
      ...
      
      llvm-svn: 113781
      1394a4b7
  7. Sep 07, 2010
  8. Sep 04, 2010
  9. Sep 03, 2010
  10. Sep 02, 2010
  11. Sep 01, 2010
  12. Aug 31, 2010
  13. Aug 30, 2010
    • Johnny Chen's avatar
      Added a system() method to the TestBase class of lldbtest.py, which is actually · 8952a2d5
      Johnny Chen authored
      taken from Python 2.7's subprocess.check_output() convenience function.  The
      purpose of this method is to run the os command with arguments and return its
      output as a byte string.
      
      Modified hello_world/TestHelloWorld.py to have two test cases:
      
      o test_with_dsym_and_run_command
      o test_with_dwarf_and_process_launch_api
      
      with the dsym case conditioned on sys.platform.startswith("darwin") being true.
      The two cases utilize the system() method to invoke "make clean; make MAKE_DYSM=YES/NO"
      to prepare for the appropriate debugging format before running the test logic.
      
      llvm-svn: 112530
      8952a2d5
  14. Aug 28, 2010
  15. Aug 27, 2010
  16. Aug 26, 2010
  17. Aug 25, 2010
  18. Aug 23, 2010
    • Johnny Chen's avatar
      Changed the keyword argument for runCmd()/expect() from 'verbose' to 'trace', · d0190a61
      Johnny Chen authored
      which, defaults to False, and if set to True, will trace lldb command execution
      and result.
      
      Added "-t" command option to the test driver dotest.py which sets the
      LLDB_COMMAND_TRACE environment variable to "YES" and as a result always turns on
      command tracing regardless of the 'trace' keyword argument to runCmd()/expect().
      
      llvm-svn: 111811
      d0190a61
  19. Aug 20, 2010
Loading