summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test
Commit message (Collapse)AuthorAgeFilesLines
* xfailing tests for Minidump pluginDimitar Vlahovski2016-10-041-0/+6
| | | | | | | | the tests are failing on the buildbot because there is an extra frame (maybe) on the call stack. Will investigate tomorrow. llvm-svn: 283263
* Fix the decorator of TestBreakpointCaseSensitivityTamas Berghammer2016-10-041-4/+2
| | | | llvm-svn: 283262
* Adding a new Minidump post-mortem debugging pluginDimitar Vlahovski2016-10-046-0/+170
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This plugin resembles the already existing Windows-only Minidump plugin. The WinMinidumpPlugin uses the Windows API for parsing Minidumps while this plugin is cross-platform because it includes a Minidump parser (which is already commited) It is able to produce a backtrace, to read the general puprose regiters, inspect local variables, show image list, do memory reads, etc. For now the only arch that this supports is x86 64 bit This is because I have only written a register context for that arch. Others will come in next CLs. I copied the WinMinidump tests and adapted them a little bit for them to work with the new plugin (and they pass) I will add more tests, aiming for better code coverage. There is still functionality to be added, see TODOs in code. Reviewers: labath, zturner Subscribers: beanz, mgorny, amccarth, lldb-commits, modocache Differential Revision: https://reviews.llvm.org/D25196 llvm-svn: 283259
* Improvements to testing blacklistFrancis Ricci2016-10-044-41/+20
| | | | | | | | | | | | | | | | | | | Summary: This patch is necessary because individual test cases are not required to have unique names. Therefore, test cases must now be specified explicitly in the form <TestCase>.<TestMethod>. Because it works by regex matching, passing just <TestCase> will still disable an entire file. This also allows for multiple exclusion files to be specified. Reviewers: zturner, labath, jingham, tfiala Subscribers: lldb-commits, sas Differential Revision: https://reviews.llvm.org/D24988 llvm-svn: 283238
* Fix test when using remote debugging.Pavel Labath2016-10-041-1/+1
| | | | | | | | | | | | | | Summary: Use os.getcwd() instead of get_process_working_directory() as prefix for souce file. Reviewers: labath Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D25217 llvm-svn: 283171
* add a simple test case to validate test id()Todd Fiala2016-10-031-0/+17
| | | | | | | Since we count on it in a few places, the test verifies that the test instance has an id() method that returns something non-None. llvm-svn: 283156
* Revert "XFAIL TestSBData for gcc-4.9 i386"Pavel Labath2016-10-021-1/+0
| | | | | | Test fixed. llvm-svn: 283069
* Fix up this test case.Jim Ingham2016-10-011-35/+0
| | | | | | | | | | | | | | The lldbutil.run_break_set_by_file_and_line has already checked that the number of locations was 1, so don't check it again. And certainly don't check it again by grubbing in break list output. Also, we know the Thread's IsStopped state is wrong, and have a test for that, so don't keep testing it in other files where that isn't the primary thing we're testing. I removed the xfail for Darwin. If this also passes on other systems, we can remove the xfails from them as we find that out. llvm-svn: 282993
* test infra: clear file-charged issues on rerun of fileTodd Fiala2016-10-012-3/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change addresses the corner case bug in the test infrastructure where a test file times out *outside* of any running test method. In those cases, the issue was charged to the file, not to a test method within the file. When that file is re-run successfully, none of the test-method-level successes would clear the file-level issue. This change fixes that: for all test files that are getting rerun (whether by being marked flaky or via the --rerun-all-issues flag), file-level test issues are searched for in each of those files. Each file-level issue found in the rerun file list then gets cleared. A test of this feature is added to issue_verification, using the technique there of moving the *.py.park file to *.py to do an end-to-end validation. This change also adds a .gitignore entry for pyenv project-level files and fixes up a few minor pep8 formatting violations in files I touched. Fixes: llvm.org/pr27423 llvm-svn: 282990
* Fix up the test so it gets closer to passing.Jim Ingham2016-09-301-40/+11
| | | | | | | | | | | Remove the test for thread stopped states from this test. That isn't set properly now, and its setting doesn't matter till we actually support non-stop debugging, so we shouldn't have unrelated tests failing from it. Also changed some code that was trying and failing to grub command line output, and replaced it by SB API calls. llvm-svn: 282976
* Add the radar on our end to the bugreport string.Jim Ingham2016-09-301-3/+3
| | | | llvm-svn: 282970
* Add the radar from our end to the bugreport string.Jim Ingham2016-09-301-1/+1
| | | | llvm-svn: 282969
* IsValid is the way to ask a breakpoint location whether it is valid.Jim Ingham2016-09-301-2/+3
| | | | llvm-svn: 282966
* Adding ivars in class extensions isn't supported on i386; skip a test.Sean Callanan2016-09-301-0/+1
| | | | llvm-svn: 282943
* Skip TestRuntimeIvars on i386; the Objective-C V1 runtime doesn't list ivars.Sean Callanan2016-09-301-1/+1
| | | | llvm-svn: 282869
* XFAIL TestSBData for gcc-4.9 i386Pavel Labath2016-09-301-0/+1
| | | | | | test broken in r282659. llvm-svn: 282849
* Add the tracking radar on our end.Jim Ingham2016-09-301-1/+1
| | | | llvm-svn: 282830
* Prefer skipping over x-failingEnrico Granata2016-09-301-1/+1
| | | | llvm-svn: 282824
* Do not assume we will be able to discover the return type of this selector ↵Enrico Granata2016-09-301-1/+1
| | | | | | call, for that is not true in i386 mode llvm-svn: 282823
* Add some logging when trace is on. We're getting a bot failure on i386 that ↵Jim Ingham2016-09-291-8/+15
| | | | | | | | doesn't I can't reproduce locally. Hopefully this will help us catch the reason. llvm-svn: 282810
* Don't expect new-style Objective-C literals to work on i386 with the V1 runtime.Sean Callanan2016-09-291-0/+1
| | | | llvm-svn: 282794
* Fixed TestObjCMethods2/i386 by separating out the portions that require ObjC V2.Sean Callanan2016-09-291-13/+17
| | | | llvm-svn: 282787
* This test will not work in i386 mode because we don't create interesting ↵Enrico Granata2016-09-291-0/+1
| | | | | | | | types from the ObjC runtime "Fixes" rdar://28501616 llvm-svn: 282774
* Fix an issue where libc++ changed the type information we get for ↵Enrico Granata2016-09-282-10/+10
| | | | | | | | std::map::iterator, rendering LLDB unable to display elements vended by an iterator Fixes <rdar://problem/28237521> llvm-svn: 282648
* Add the ability for the task port to change when a process execs.Greg Clayton2016-09-281-1/+0
| | | | | | <rdar://problem/28476369> llvm-svn: 282632
* use assertEquals in TestSBTypeClassMembersTodd Fiala2016-09-281-26/+33
| | | | | | | | This change replaces the self.assertTrue() calls with self.assertEquals() so that test failures get more context on failure values. llvm-svn: 282628
* convert TestFatArchives.py over to no-debug-info testTodd Fiala2016-09-271-11/+4
| | | | | | | | | | We only use the .o-style debug info here regardless, so having it run all three debuginfo styles was a waste. This also strips out the custom build function and uses the TestBase.build() method. llvm-svn: 282508
* xfail TestExec.py on macOSTodd Fiala2016-09-271-0/+1
| | | | | | | Tracked by: rdar://28476369 llvm-svn: 282496
* added Linux support for test timeout samplingTodd Fiala2016-09-262-16/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the Linux counterpart to the sampling support I added on the macOS side. This change also introduces zip-file compression if the size of the sample output is greater than 10 KB. The Linux side can be quite large and the textual content is averaging over a 10x compression factor on tests that I force to time out. When compression takes place, the filename becomes: {session_dir}/{TestFilename.py}-{pid}.sample.zip This support relies on the linux 'perf' tool. If it isn't present, the behavior is to ignore pre-kill processing of the timed out test process. Note calling the perf tool under the timeout command appears to nuke the profiled process. This was causing the timeout kill logic to fail due to the process having disappeared. I modified the kill logic to catch the case of the process not existing, and I have it ignore the kill request in that case. Any other exception is still raised. Reviewers: labath Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D24890 llvm-svn: 282436
* Added a setting that enables saving all .o files from a given JIT expression.Sean Callanan2016-09-263-0/+76
| | | | | | | | This allows debugging of the JIT and other analyses of the internals of the expression parser. I've also added a testcase that verifies that the setting works correctly when off and on. llvm-svn: 282434
* Fix serialization of Python breakpoint commands.Jim Ingham2016-09-262-3/+3
| | | | | | | | | | | CommandData breakpoint commands didn't know whether they were Python or Command line commands, so they couldn't serialize & deserialize themselves properly. Fix that. I also changed the "breakpoint list" command to note in the output when the commands are Python commands. Fortunately only one test was relying on this explicit bit of text output. llvm-svn: 282432
* Remove ancient icc decoratorsPavel Labath2016-09-264-12/+0
| | | | | | | Nobody is running the test suite with icc, so we have no idea if they pass. But the bug they link to has definitely been fixed. llvm-svn: 282408
* Remove an ancient XFAIL from TestBuiltinTrapPavel Labath2016-09-261-6/+0
| | | | | | | in refers to gcc-4.6. Hopefully noone is using that anymore, and I think there is a good chance it was fixed anyway. llvm-svn: 282406
* Allow for tests to be disabled at runtimeFrancis Ricci2016-09-234-1/+93
| | | | | | | | | | | | | | | | Summary: The current implementation of the test suite allows the user to run a certain subset of tests using '-p', but does not allow the inverse, where a user wants to run all but some number of known failing tests. Implement this functionality. Reviewers: labath, zturner, tfiala Subscribers: jingham, sas, lldb-commits Differential Revision: https://reviews.llvm.org/D24629 llvm-svn: 282298
* add hook for calling platform-dependent pre-kill action on a timed out testTodd Fiala2016-09-232-27/+142
| | | | | | | differential review: https://reviews.llvm.org/D24850 reviewers: clayborg, labath llvm-svn: 282258
* Add the ability to append breakpoints to the save file.Jim Ingham2016-09-221-3/+57
| | | | llvm-svn: 282212
* Add the ability to deserialize only breakpoints matching a given name.Jim Ingham2016-09-221-1/+34
| | | | | | Also tests for this and the ThreadSpec serialization. llvm-svn: 282207
* Fix parsing expressions to evaluate with spaces and optional args (MI)Ilia K2016-09-221-5/+14
| | | | | | | | | | | | | | | | | | | | | Summary: When extracting options for long options (starting with `--`), the use of `MIUtilString::SplitConsiderQuotes` to split all the arguments was being conditioned on the option type to be expected. This was wrong as this caused other options to be parsed incorrectly since it was not taking into account the presence of quotes. Patch by Ed Munoz <edmunoz@microsoft.com> Reviewers: edmunoz, ki.stfu Subscribers: ki.stfu, lldb-commits Projects: #lldb Differential Revision: https://reviews.llvm.org/D24202 llvm-svn: 282135
* add stop column highlighting supportTodd Fiala2016-09-214-14/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change introduces optional marking of the column within a source line where a thread is stopped. This marking will show up when the source code for a thread stop is displayed, when the debug info knows the column information, and if the optional column marking is enabled. There are two separate methods for handling the marking of the stop column: * via ANSI terminal codes, which are added inline to the source line display. The default ANSI mark-up is to underline the column. * via a pure text-based caret that is added in the appropriate column in a newly-inserted blank line underneath the source line in question. There are some new options that control how this all works. * settings set stop-show-column This takes one of 4 values: * ansi-or-caret: use the ANSI terminal code mechanism if LLDB is running with color enabled; if not, use the caret-based, pure text method (see the "caret" mode below). * ansi: only use the ANSI terminal code mechanism to highlight the stop line. If LLDB is running with color disabled, no stop column marking will occur. * caret: only use the pure text caret method, which introduces a newly-inserted line underneath the current line, where the only character in the new line is a caret that highlights the stop column in question. * none: no stop column marking will be attempted. * settings set stop-show-column-ansi-prefix This is a text format that indicates the ANSI formatting code to insert into the stream immediately preceding the column where the stop column character will be marked up. It defaults to ${ansi.underline}; however, it can contain any valid LLDB format codes, e.g. ${ansi.fg.red}${ansi.bold}${ansi.underline} * settings set stop-show-column-ansi-suffix This is the text format that specifies the ANSI terminal codes to end the markup that was started with the prefix described above. It defaults to: ${ansi.normal}. This should be sufficient for the common cases. Significant leg-work was done by Adrian Prantl. (Thanks, Adrian!) differential review: https://reviews.llvm.org/D20835 reviewers: clayborg, jingham llvm-svn: 282105
* Probably should add the breakpoint names test directory as well...Jim Ingham2016-09-213-0/+200
| | | | llvm-svn: 282103
* Add some more tests for breakpoint serialization.Jim Ingham2016-09-201-45/+99
| | | | | | | | | | Serialize breakpoint names & the hardware_requested attributes. Also added a few missing affordances to SBBreakpoint whose absence writing the tests pointed out. <rdar://problem/12611863> llvm-svn: 282036
* add availability check to DarwinLog event testsTodd Fiala2016-09-161-0/+13
| | | | | | | | | | The pexpect-based tests properly checked for the stub reporting DarwinLog support. The event-based ones did not. This is fixed here. Swift CI bots are not currently building debugserver on macOS, so they don't have the DarwinLog support even when they pass the macOS 10.12 check. llvm-svn: 281696
* First tests for serializing breakpoints.Jim Ingham2016-09-163-0/+206
| | | | | | Plus a few bug fixes I found along the way. llvm-svn: 281690
* Fix TestSymbolContextTwoFiles on Android after rL281595Tamas Berghammer2016-09-151-1/+1
| | | | llvm-svn: 281601
* Add support for DW_AT_ranges_base attributeTamas Berghammer2016-09-154-19/+71
| | | | | | | | | | | | | It is a new attribute emitted by clang as a GNU extension and will be part of Dwarf5. The purpose of the attribute is to specify a compile unit level base value for all DW_AT_ranges to reduce the number of relocations have to be done by the linker. Fixes (at least partially): https://llvm.org/pr28826 Differential revision: https://reviews.llvm.org/D24514 llvm-svn: 281595
* Force c++14 when running tests on Windows.Zachary Turner2016-09-131-0/+1
| | | | | | | | | VS 2015 and higher begin making use of c++14 in their standard library headers. As such, -std=c++11 makes it so you can't compile trivial programs. Bump this to -std=c++14 when this situation is detected. llvm-svn: 281420
* TestQueues could error out because the one second sleep main.c wasJason Molenda2016-09-132-3/+6
| | | | | | | | using to enqueue all the jobs wasn't enough time on a slow/overloaded system. Instead use a global to indicate when all the work has been enqueued, let's see if this makes the CIs work more reliably. llvm-svn: 281418
* Reduce the number of simultaneous debug sessions to 10 and removeJason Molenda2016-09-132-2/+1
| | | | | | | | | | | | | the expectedFlakeyDarwin annotation. I've been running this test in isolation on my macOS Sierra system and haven't seen a failure in 20-30 runs. The number of simultaneous debug sessions that it spins up could be a problem when the testbots are running under load, so I'm reducing this from 20 simultaneous debug sessions to see if we can get enough stability to leave this enabled. llvm-svn: 281291
* xfail TestQueues.py and TestDarwinLogFilterMatchMessage.pyTodd Fiala2016-09-122-0/+9
| | | | | | | | | | | | | | It looks like the message-content-retrieval aspect of DarwinLog support is flaky, not just the regex match against it. Slightly less frequently than the regex matching, I am seeing the direct string-match variant of log-message-content matching also fail. Tracked by: llvm.org/pr30299 rdar://28237450 llvm-svn: 281251
* Add MiSyntaxTestCase.test_lldbmi_output_grammar test (MI)Ilia K2016-09-121-0/+101
| | | | | | | | | | | | Summary: This patch adds a new test and fixes extra new-line before exit Reviewers: abidh Subscribers: ki.stfu, dawn, lldb-commits, abidh Differential Revision: https://reviews.llvm.org/D9740 llvm-svn: 281199
OpenPOWER on IntegriCloud