summaryrefslogtreecommitdiff
path: root/testsuite/driver/runtests.py
Commit message (Collapse)AuthorAgeFilesLines
...
* Be more consistent in printing about framework failuresIan Lynagh2007-11-231-1/+1
|
* Set os.environ['TERM'] = 'vt100' before running testsIan Lynagh2007-09-061-0/+5
| | | | | Readline sometimes spews out ANSI escapes for some values of TERM, which result in test failures.
* count a syntax error in a .T file as a framework failureSimon Marlow2007-08-231-0/+1
|
* clean up the extra_ways machinerySimon Marlow2007-06-271-2/+4
|
* Allow tests to be skipped based on whether or not the compiler has a tagIan Lynagh2007-04-131-0/+3
| | | | | | When working on a new foo extension, you can now put your tests in the testsuite, set ProjectTags=-foo in mk/build.mk and skip_unless_tag('foo') in the tests.
* Calibrate the testsuite timeout if a value of -1 is givenIan Lynagh2007-04-051-0/+6
|
* Time how long is spent on each .T fileIan Lynagh2007-03-311-0/+15
|
* Look for .T files in packages tooSimon Marlow2007-02-211-2/+5
| | | | | | | | This means we can put package-specific tests in the repository for the package, rather than putting them in the testsuite. There should be a .T file to go with the tests, in the same way as for other tests in the testsuite (but this could be in addition to a standalone test driver that works with Cabal's 'setup test').
* Option to skip ways when running the testsuiteIan Lynagh2007-02-061-0/+10
|
* Allow threading to be completely disabled with USETHREADS=0Ian Lynagh2006-08-291-14/+26
| | | | | | | I had to pull the global classes and instances out into their own module as there was a catch-22: testlib needed to know if threading was enabled, but we don't know that until we have gone through the argument, but going through the arguments required changing things like config in testlib.
* Driver: Add THREADS-supportEsa Ilari Vuokko2006-08-221-3/+13
|
* [project @ 2005-02-04 10:59:55 by simonmar]simonmar2005-02-041-1/+0
| | | | | Add a timeout to test runs, using a wrapper program (written in Haskell, using System.Process of course!).
* [project @ 2003-08-19 21:51:53 by krc]krc2003-08-191-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Added support for testing generation and compilation of External Core code. There are two new ways, which are not automatically enabled but can be invoked from the command line: extcore and optextcore. Invoking either way will test that ghc is able to generate External Core code for a given test, read the code back in, and compile it to an executable that produces the expected output for the test. The External Core facility has a few limitations which result in certain tests failing for the "extcore" way. - External Core can't represent foreign calls other than static C calls - External Core can't correctly represent literals resulting from a "foreign label" declaration - External Core can't represent declarations of datatypes with no constructors The first of these was already known, and GHC panics if you tried to generate External Core for a program containing such a call. The second two cases were not handled properly before now; in another commit, I've changed the code that emits External Core to panic if either of them arises. Previously, GHC would happily generate External Core in either case, but would not be able to compile the resulting code. There are several tests that exhibit these limitations of External Core, so they've had to be made "expected failures" when compiling in the extcore or optextcore ways.
* [project @ 2002-09-11 10:47:57 by simonmar]simonmar2002-09-111-0/+9
| | | | | | | | | | - Move some of the way-selection logic into the configuration file; the build system now just passes in variables saying whether the compiler supports profiling and native code generation, and the configuration file adds the appropriate ways. - Add a new option to the test driver, --way=<way> to select just a single way.
* [project @ 2002-07-31 14:24:18 by simonmar]simonmar2002-07-311-0/+86
Revamp the testsuite framework. The previous framework was an experiment that got a little out of control - a whole new language with an interpreter written in Haskell was rather heavyweight and left us with a maintenance problem. So the new test driver is written in Python. The downside is that you need Python to run the testsuite, but we don't think that's too big a problem since it only affects developers and Python installs pretty easily onto everything these days. Highlights: - 790 lines of Python, vs. 5300 lines of Haskell + 720 lines of <strange made-up language>. - the framework supports running tests in various "ways", which should catch more bugs. By default, each test is run in three ways: normal, -O, and -O -fasm. Additionally, if profiling libraries have been built, another way (-O -prof -auto-all) is added. I plan to also add a 'GHCi' way. Running tests multiple ways has already shown up some new bugs! - documentation is in the README file and is somewhat improved. - the framework is rather less GHC-specific, and could without much difficulty be coaxed into using other compilers. Most of the GHC-specificness is in a separate configuration file (config/ghc). Things may need a while to settle down. Expect some unexpected failures.