Implements a simple test engine as described in #11.
Naming conventions of tests are the following:
If a test fails but a fix is being worked on, you can mark it as pending by appending pending_ in front of the test file name.
If a test is expected to fail at some point, there are multiple cases:
The test is expected to fail at lexing. Prefix the file name with error_lx_.
The test is expected to fail at parsing. Prefix the file name with error_ps_.
The test is expected to fail at type-checking. Prefix the file name with error_tc_.
The test is expected to fail, but you either don't know at which phase, or don't expect it to crash at any phase. Prefix the file name with error_.
If a test is expected not to fail, do not prefix the test with either pending_ or error_*.
Note: all tests go in the ./test folder, and you are expected to run stack test from the root of the project. Be also aware that the engine only recognizes tests whose file extensions are .nst.
Implements a simple test engine as described in #11.
Naming conventions of tests are the following:
pending_
in front of the test file name.error_lx_
.error_ps_
.error_tc_
.error_
.pending_
orerror_*
.Note: all tests go in the
./test
folder, and you are expected to runstack test
from the root of the project. Be also aware that the engine only recognizes tests whose file extensions are.nst
.