Idris2/tests
G. Allais 937aa8fc43
[ refactor ] introducing Namespace (#638)
Until now namespaces were stored as (reversed) lists of strings.
It led to:

* confusing code where we work on the underlying representation of
  namespaces rather than say what we mean (using `isSuffixOf` to mean
  `isParentOf`)

* potentially introducing errors by not respecting the invariant cf.
  bug report #616 (but also name generation in the scheme backend
  although that did not lead to bugs as it was self-consistent AFAICT)

* ad-hoc code to circumvent overlapping interface implementation when
  showing / pretty-printing namespaces

This PR introduces a `Namespace` newtype containing a list of strings.
Nested namespaces are still stored in reverse order but the exposed
interface aims to support programming by saying what we mean
(`isParentOf`, `isApproximationOf`, `X <.> Y` computes to `X.Y`, etc.)
irrespective of the underlying representation.
2020-09-05 09:41:31 +01:00
..
chez refactor Data.String.Parser (#579) 2020-08-22 08:13:34 +01:00
ideMode Rename --consolewidth option to --console-width for consistency 2020-08-19 11:59:31 +01:00
idris2 [ refactor ] introducing Namespace (#638) 2020-09-05 09:41:31 +01:00
node add support for more casts from and to BitsN types (#548) 2020-08-20 15:01:09 +01:00
prelude/reg001 Restore Bool operators precedence 2020-07-18 05:49:35 -07:00
ttimp add support for more casts from and to BitsN types (#548) 2020-08-20 15:01:09 +01:00
typedd-book Rename --consolewidth option to --console-width for consistency 2020-08-19 11:59:31 +01:00
Main.idr [ refactor ] introducing Namespace (#638) 2020-09-05 09:41:31 +01:00
Makefile Make sure literals are normalise on LHS 2020-05-23 11:48:15 +01:00
README.md Add test script 2020-05-19 18:25:18 +01:00
tests.ipkg Windows support 2020-05-21 15:13:06 +02: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.