Idris2/tests
2023-06-19 16:34:19 +01:00
..
allbackends [ new ] Add support for bi-directional pipes on POSIX systems (resolves #2935) (#2944) 2023-04-15 09:39:17 -05:00
allschemes [ fix ] also usleep in the producer of channels006 to guarantee correct output (#2702) 2022-10-05 12:03:20 +01:00
base [ new ] Implement bit-rotation operators (#2903) 2023-03-04 14:41:54 +00:00
chez [ codegen ] constant fold believe_me 2023-05-06 14:52:14 +01:00
codegen [ new ] Allow fixities to be hidden with %hide 2023-06-14 11:19:59 +01:00
contrib [ contrib ] Performance improvement gcd in Data.Nat.Factor (#2886) 2023-02-22 12:08:49 +00:00
gambit/bitops001 Add Data.Bits to base (#1033) 2021-03-04 20:59:56 +00:00
ideMode [ new ] %unsafe pragma for escape hatches (#2937) 2023-04-03 21:42:47 +01:00
idris2 [ elab ] Make elab scripts be able to record warnings (#2999) 2023-06-19 16:34:19 +01:00
node [ codegen ] more flexible array implementation on JS backends (#2966) 2023-05-14 06:45:50 +01:00
prelude [ prelude ] Add Range implementation for Char (#2505) 2022-05-27 07:57:59 +01:00
racket Move channel tests to allschemes 2022-10-04 10:24:27 +02:00
refc [ perf ] manually eta-expand unsaturated io_bind calls (#2785) 2022-12-01 15:31:00 +00:00
templates [ new ] put TTC files in a version-tagged directory (#2684) 2022-11-01 18:11:18 +00:00
ttimp [ termination ] faithful implementation of size-change graph termination analysis 2023-02-08 16:13:04 +00:00
typedd-book [ refactor ] Abstract Prelude.elem to work with all Foldables (#2294) 2022-02-01 21:34:29 +00:00
vmcode/basic001 Move rm -rf to the beginning of the test 2021-07-13 22:54:53 +01:00
Main.idr [ elab ] Make elab scripts be able to record warnings (#2999) 2023-06-19 16:34:19 +01:00
Makefile [ repl ] Add the ability to get detailed help, e.g. :help :help (#2722) 2022-10-21 14:35:33 +02:00
README.md [ re #2649 ] Describe test naming pattern 2022-11-11 09:33:09 +01:00
tests.ipkg Set PREFIX for tests 2021-04-19 11:23:58 +01:00

Tests

Note: The commands listed in this section should be run from the repository's root folder.

Run all tests: make test

To run only a subset of the tests use: make test only=NAME. NAME is matched against the path to each test case.

Examples:

  • make test only=chez will run all Chez Scheme tests.
  • make test only=ttimp/basic will run all basic tests for TTImp.
  • make test only=idris2/basic001 will run a specific test.

Templates for common test instances can be found in the templates folder.

There is no defined naming convention for adding tests, but the pattern has been:

  • a sub-directory in the relevant test section (idris2, refc, etc.)
  • with a descriptive name followed by a 3-digit number (e.g. envflags001 is the first test checking the environment flags functions)
  • containing:
    • an Idris file importing the relevant modules and containing the test function(s)
    • a run file which is a shell script that runs the test (see the existing tests for examples for this)
    • an expected file containing the expected output