summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/configuration.py
Commit message (Collapse)AuthorAgeFilesLines
* [test] Use a different module cache for Shell and API tests.Jonas Devlieghere2019-10-101-1/+3
| | | | | | | | | | | | | | Before the test reorganization, everything was part of a single test suite with a single module cache. Now that things are properly separated this is no longer the case. Only the shell tests inherited the logic to properly configure and wipe the module caches. This patch adds that logic back for the API tests. While doing so, I noticed that we were configuring a Clang module cache in CMake, but weren't actually using it from dotest.py. I included a fix for that in this patch as well. Differential revision: https://reviews.llvm.org/D68755 llvm-svn: 374386
* [test] Fix various module cache bugs and inconsistenciesJonas Devlieghere2019-08-291-0/+3
| | | | | | | | | | | | | | | | | Currently, lit tests don't set neither the module cache for building inferiors nor the module cache used by lldb when running tests. Furthermore, we have several places where we rely on the path to the module cache being always the same, rather than passing the correct value around. This makes it hard to specify a different module cache path when debugging a a test. This patch reworks how we determine and pass around the module cache paths and fixes the omission on the lit side. It also adds a sanity check to the lit and dotest suites. Differential revision: https://reviews.llvm.org/D66966 llvm-svn: 370394
* [dotest] Remove --rerun-max-file-thresholdJonas Devlieghere2019-08-281-1/+0
| | | | | | This variable corresponding to this argument is set but never read. llvm-svn: 370264
* [dotest] Remove -q (quiet) flag.Jonas Devlieghere2019-08-281-4/+0
| | | | | | | | | | | | | | This patch removes the -q (quiet) flag and changing the default behavior. Currently the flag serves two purposes that are somewhat contradictory, as illustrated by the difference between the argument name (quiet) and the configuration flag (parsable). On the one hand it reduces output, but on the other hand it prints more output, like the result of individual tests. My proposal is to guard the extra output behind the verbose flag and always print the individual test results. Differential revision: https://reviews.llvm.org/D66837 llvm-svn: 370226
* [dotest] Remove results portJonas Devlieghere2019-08-271-1/+0
| | | | | | | | | | The results port was used by dosep.py to deal with test results coming form different processes. With dosep.py gone, I don't think we need this any longer. Differential revision: https://reviews.llvm.org/D66811 llvm-svn: 370090
* [dotest] Remove long running test "decorator" and re-enable tests.Jonas Devlieghere2019-08-271-3/+0
| | | | | | | | | | | | Today I discovered the skipLongRunningTest decorator and to my surprise all the tests were passing without the decorator. They don't seem to be that expensive either, they take a few seconds but we have tests that take much longer than that. As such I propose to remove the decorator and enable them by default. Differential revision: https://reviews.llvm.org/D66774 llvm-svn: 369995
* [dotest] Add --dwarf-version to override the tested DWARF version.Jonas Devlieghere2019-08-191-0/+3
| | | | | | | | | | | | | On the matrix bot on GreenDragon [1] we want to run the test suite against different DWARF versions. The idea here is not to replace targeted tests for certain DWARF features, but rather to provide an easy way to support this configuration. [1] http://green.lab.llvm.org/green/view/LLDB/job/lldb-cmake-matrix/ Differential revision: https://reviews.llvm.org/D66370 llvm-svn: 369272
* [lldb][NFC] Remove unused imports in python testsRaphael Isemann2019-08-021-2/+0
| | | | llvm-svn: 367663
* [dotest] Remove multiprocessingJonas Devlieghere2019-07-301-6/+0
| | | | | | | | | | | Now that the Xcode project is removed, I want to focus on dotest as a test framework, and remove its driver capabilities for which we already rely on llvm's lit. Removing multiprocessing is the first step in that direction. Differential revision: https://reviews.llvm.org/D65311 llvm-svn: 367331
* Update the file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-191-4/+3
| | | | | | | | | | | | | | | | | to reflect the new license. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351636
* Fix failure in get_filecheck_path when filecheck is NoneStella Stamenova2018-10-121-1/+1
| | | | | | If the path was not specified (and it's None), lexists throws an exception rather than returning False. get_filecheck_path now checks whether filecheck is set before calling lexists llvm-svn: 344410
* [dotest] Make a missing FileCheck binary a warning, not an errorVedant Kumar2018-10-121-2/+2
| | | | | | | | | | This allows bots which haven't updated to pass in --filecheck to dotest.py to run more tests. FileCheck-dependent tests will continue to fail. Differential Revision: https://reviews.llvm.org/D53175 llvm-svn: 344401
* Allow use of self.filecheck in LLDB tests (c.f self.expect)Vedant Kumar2018-09-181-0/+11
| | | | | | | | | | | | | Add a "filecheck" method to the LLDB test base. This allows test authors to pattern match command output using FileCheck, making it possible to write stricter tests than what `self.expect` allows. For context (motivation, examples of stricter checking, etc), see the lldb-dev thread: "Using FileCheck in lldb inline tests". Differential Revision: https://reviews.llvm.org/D50751 llvm-svn: 342508
* [dotest] Make --test-subdir work with --no-multiprocessVedant Kumar2018-08-161-1/+36
| | | | | | | | | | | | | | | | | | | The single-process test runner is invoked in a number of different scenarios, including when multiple test dirs are specified or (afaict) when lit is used to drive the test suite. Unfortunately the --test-subdir option did not work with the single process test runner, breaking an important use case (using lit to run swift-lldb Linux tests): Failure URL: https://ci.swift.org/job/swift-PR-Linux/6841 We won't be able to run lldb tests within swift PR testing without filtering down the set of tests. This change makes --test-subdir work with the single-process runner. llvm-svn: 339929
* Remove vestigial remnants of the test crash info hookPavel Labath2018-02-141-4/+0
| | | | llvm-svn: 325137
* Compile the LLDB tests out-of-tree.Adrian Prantl2018-01-301-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | This patch is the result of a discussion on lldb-dev, see http://lists.llvm.org/pipermail/lldb-dev/2018-January/013111.html for background. For each test (should be eventually: each test configuration) a separate build directory is created and we execute make VPATH=$srcdir/path/to/test -C $builddir/path/to/test -f $srcdir/path/to/test/Makefile -I $srcdir/path/to/test In order to make this work all LLDB tests need to be updated to find the executable in the test build directory, since CWD still points at the test's source directory, which is a requirement for unittest2. Although we have done extensive testing, I'm expecting that this first attempt will break a few bots. Please DO NOT HESITATE TO REVERT this patch in order to get the bots green again. We will likely have to iterate on this some more. Differential Revision: https://reviews.llvm.org/D42281 llvm-svn: 323803
* [dotest] Remove crashinfo hookPavel Labath2018-01-101-34/+0
| | | | | | | | | | | | | | | | Summary: This used to be important when all tests were run in a single process, but that has no longer been the case for a while. Furthermore, this hook fails to build on new mac versions for several people, and it's not clear whether fixing it is worth the effort. Reviewers: jingham, clayborg, davide Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D41871 llvm-svn: 322167
* Don't override the SDKs and force the use of /System/Library/Frameworks toJason Molenda2017-05-191-1/+1
| | | | | | | find the python headers when buiding crashinfo.c <rdar://problem/32288076> llvm-svn: 303465
* The darwin_log tests are very fragile and currently do not properly assess ↵Sean Callanan2017-04-051-1/+1
| | | | | | | | | | the state of that functionality. I have put them all in their own category, and made that category disabled by default. Differential revision: https://reviews.llvm.org/D31718 llvm-svn: 299587
* dotest.py: remove the ability to specify different architectures/compilers ↵Pavel Labath2017-03-151-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | in a single invocation Summary: This has been broken at least since the new test result framework was added, which was over a year ago. It looks like nobody has missed it since. Removing this makes the gmodules handling code saner, as it already did not know how to handle the multiple-compilers case. My motivation for this is libc++ data formatters support on android -- I am trying make a central way of determining whether libc++ tests can be run, and without this, I would have to resort to similar hacks as the gmodules code. Reviewers: jingham, zturner Subscribers: danalbert, tfiala, lldb-commits Differential Revision: https://reviews.llvm.org/D30779 llvm-svn: 297811
* Improvements to testing blacklistFrancis Ricci2016-10-041-4/+2
| | | | | | | | | | | | | | | | | | | 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
* Allow for tests to be disabled at runtimeFrancis Ricci2016-09-231-0/+6
| | | | | | | | | | | | | | | | 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
* *** This commit represents a complete reformatting of the LLDB source codeKate Stone2016-09-061-11/+20
| | | | | | | | | | | | | | | | | | | | | | | *** to conform to clang-format’s LLVM style. This kind of mass change has *** two obvious implications: Firstly, merging this particular commit into a downstream fork may be a huge effort. Alternatively, it may be worth merging all changes up to this commit, performing the same reformatting operation locally, and then discarding the merge for this particular commit. The commands used to accomplish this reformatting were as follows (with current working directory as the root of the repository): find . \( -iname "*.c" -or -iname "*.cpp" -or -iname "*.h" -or -iname "*.mm" \) -exec clang-format -i {} + find . -iname "*.py" -exec autopep8 --in-place --aggressive --aggressive {} + ; The version of clang-format used was 3.9.0, and autopep8 was 1.2.4. Secondly, “blame” style tools will generally point to this commit instead of a meaningful prior commit. There are alternatives available that will attempt to look through this change and find the appropriate prior commit. YMMV. llvm-svn: 280751
* Allow custom formatting of session log file names.Zachary Turner2016-05-171-0/+9
| | | | | | Differential Revision: http://reviews.llvm.org/D20306 llvm-svn: 269793
* test infra: enable single-worker rerun phase for flakey tests.Todd Fiala2015-12-141-0/+1
| | | | | | | | | | | | | | | | Use of --rerun-all-issues will enable any test method failure, not just test methods marked with the flakey decorator, to rerun. Currently this does not change the flakey logic's immediate rerun attempt. I want to make sure this doesn't cause any significant issues before changing that part. The rerun reporting is only known to work properly with the default (new) BasicResultsFormatter reporting. Once we work out any issues, I'll go back and make sure the curses output handles it properly as well. llvm-svn: 255543
* Make debug info specification use categories system.Zachary Turner2015-12-141-4/+0
| | | | | | | Reviewed By: Tamas Berghammer, Pavel Labath Differential Revision: http://reviews.llvm.org/D15428 llvm-svn: 255525
* test infra: adds book-keeping for rerunnable testsTodd Fiala2015-12-121-0/+3
| | | | | | | | | | | | | | Also adds full path info for exceptional exits and timeouts when no test method is currently running. Adds --rerun-all-issues command line arg. If specified, all test issues are eligible for rerun. If not specified, only tests marked flakey are eligible for rerun. The actual rerunning will occur in an upcoming change. This change just handles tha accounting of what should be rerun. llvm-svn: 255438
* Remove -S option from dotest.py.Zachary Turner2015-12-111-3/+0
| | | | llvm-svn: 255361
* Remove -r and -R options from dotest.py.Zachary Turner2015-12-111-6/+0
| | | | llvm-svn: 255360
* test result details now print module.class.test_name in verbose mode.Todd Fiala2015-12-101-1/+1
| | | | | | | And, turns off verbose mode by default. This must have been switched on as the default when somebody was testing. llvm-svn: 255310
* Remove the -y option from dotest.py.Zachary Turner2015-12-101-3/+0
| | | | llvm-svn: 255280
* Remove the -x option from dotest.py.Zachary Turner2015-12-101-2/+0
| | | | llvm-svn: 255279
* Remove the --output-on-success command line argument from dotest.Zachary Turner2015-12-101-1/+0
| | | | llvm-svn: 255277
* Remove the -T option from dotest.py.Zachary Turner2015-12-101-3/+0
| | | | llvm-svn: 255276
* Remove the -P option from dotest.pyZachary Turner2015-12-091-3/+0
| | | | | | | | This was an option to display a graphical progress bar. Nobody is using this, and it doesn't work correctly anyway with the new result formatter. llvm-svn: 255153
* Delete the -n command line option from dotest.py.Zachary Turner2015-12-091-4/+0
| | | | | | | This removes the option to not print some one time version and diagnostic information when running the test suite. llvm-svn: 255152
* Remove the -i command line option from dotest.py.Zachary Turner2015-12-091-3/+0
| | | | | | | This is part of a larger effort to remove unused command line options from dotest.py. llvm-svn: 255151
* Delete the -F command line option from dotest.py.Zachary Turner2015-12-091-3/+0
| | | | | | | | This removes the failfast command line option as part of an effort to simplify dotest and remove unused command line options. You can still Ctrl+C any time you want to exit early. llvm-svn: 255150
* Remove -k command line option from dotest.py.Zachary Turner2015-12-091-4/+0
| | | | | | This is part of an effort to remove unused command line options. llvm-svn: 255143
* Remove -e option from dotest.py.Zachary Turner2015-12-091-3/+1
| | | | | | | This is part of an effort to clean up dotest command line options that are no longer used. llvm-svn: 255142
* Remove the -c option from dotest.py.Zachary Turner2015-12-081-17/+3
| | | | | | | | | | This seems to be a legacy relic from days gone by where the remote test suite runner operated completely differently than it does today. git blames and comments traced this functionality back to about 2012, and nobody seems to know anything about it now. llvm-svn: 255060
* Remove the -X option from dotest.pyZachary Turner2015-12-081-3/+0
| | | | | | | | This removes the option to exclude a single directory. This is part of an effort to remove unused options and cleanup the interface to the test suite. llvm-svn: 255048
* Remove the -g option from dotest.pyZachary Turner2015-12-081-5/+0
| | | | | | | | This removes the non-exclusive filterspec option as part of an effort to remove unused / deprecated command line options from dotest. llvm-svn: 255041
* Remove the -b option from dotest.pyZachary Turner2015-12-081-7/+0
| | | | | | | This removes the blacklist option as part of an effort to remove unused / unmaintained command line options from the test suite. llvm-svn: 255040
* Remove +b option from dotest.pyZachary Turner2015-12-081-3/+0
| | | | llvm-svn: 255037
* Remove the -D option from dotest.py.Zachary Turner2015-12-081-3/+0
| | | | | | | This removes the option to dump Python sys.path variable as part of an effort to remove unused options. llvm-svn: 255035
* Fixup dotest.py on mac for the configuration packagePavel Labath2015-12-081-3/+2
| | | | llvm-svn: 255013
* Move LLDBTestResult class to its own module.Zachary Turner2015-12-081-0/+11
| | | | llvm-svn: 254983
* Get rid of global variables in dotest.pyZachary Turner2015-12-081-0/+223
This moves all the global variables into a separate module called `configuration`. This has a number of advantages: 1. Configuration data is centrally maintained so it's easy to get a high level overview of what configuration data the test suite makes use of. 2. The method of sharing configuration data among different parts of the test suite becomes standardized. Previously we would put some things into the `lldb` module, some things into the `lldbtest_config` module, and some things would not get shared. Now everything is shared through one module and is available to the entire test suite. 3. It opens the door to moving some of the initialization code into the `configuration` module, simplifying the implementation of `dotest.py`. There are a few stragglers that didn't get converted over to using the `configuration` module in this patch, because it would have grown the size of the patch unnecessarily. This includes everything currently in the `lldbtest_config` module, as well as the `lldb.remote_platform` variable. We can address these in the future. llvm-svn: 254982
OpenPOWER on IntegriCloud