final test cleanup

This commit is contained in:
dzaima 2025-06-04 03:54:28 +03:00
parent 7db91b9785
commit 11da303f4c
2 changed files with 7 additions and 5 deletions

View File

@ -1,25 +1,27 @@
## Tests ## Tests
Must be run from the projects root directory. Some tests require `-DTEST_UTILS` (enabled by default in debug builds) All of the below must be ran from the project's root directory. Some tests require `-DTEST_UTILS` (enabled by default in debug builds)
``` C ``` C
test/mainCfgs.sh path/to/mlochbaum/BQN // run the test suite for a couple primary configurations test/mainCfgs.sh path/to/mlochbaum/BQN // run the test suite for a couple primary configurations
test/x86Cfgs.sh path/to/mlochbaum/BQN // run the test suite for x86-64-specific configurations, including singeli; 32-bit build is "supposed" to fail one test involving ⋆⁼ test/x86Cfgs.sh path/to/mlochbaum/BQN // run the test suite for x86-64-specific configurations, including singeli; 32-bit build is "supposed" to fail one test involving ⋆⁼
test/moreCfgs.sh path/to/mlochbaum/BQN // run "2+2" in a bunch of configurations; requires dzaima/BQN to be accessible as dbqn test/moreCfgs.sh path/to/mlochbaum/BQN // run "2+2" in a bunch of configurations; requires dzaima/BQN to be accessible as dbqn
test/run.bqn // run tests in test/cases/ test/run.bqn // run tests in test/cases/
./BQN test/joinReuse.bqn // test in-place join; requires -DPRINT_JOIN_REUSE
make -C test/ffi // test FFI functionality; expects both regular and shared library CBQN builds to already exist make -C test/ffi // test FFI functionality; expects both regular and shared library CBQN builds to already exist
legacy utilities: legacy things:
test/joinReuse.bqn // test in-place join; requires -DPRINT_JOIN_REUSE
test/readTests.bqn // read mlochbaum/BQN tests in various formats test/readTests.bqn // read mlochbaum/BQN tests in various formats
test/precompiled.bqn // run a precompiled expression test/precompiled.bqn // run a precompiled expression
``` ```
Format of tests in `test/cases/`: Format of tests in `test/cases/`:
```python ```python
%DEF somename some code # add a definition to be used by later tests or other %DEFs %DEF somename some code # add a definition to be used by later tests or other %DEFs
%USE somename # copy-paste in the code of the given definition to here %USE somename # copy-paste in the code of the given definition to here
# if the first line is "### WHOLE-FILE-TEST", the whole file is a single test
tests: tests:
# •args contains `helpers‿"arg0"‿1`, "helpers" being run.bqn's variable of the same name
code that runs some !assertions # if there are no '!'s, 'lint' will complain code that runs some !assertions # if there are no '!'s, 'lint' will complain
!"error message" % erroring code # can be written as "!% erroring code" at first, and let 'update-messages' insert the message !"error message" % erroring code # can be written as "!% erroring code" at first, and let 'update-messages' insert the message
code %% expected value code %% expected value

View File

@ -1,6 +1,6 @@
VVariation LVListVariations•internal VVariation LVListVariations•internal
AllEq !¨ (<¨) AllEq !¨ (<¨)
# all that's important in the output is that there are at least some "reuse:1"s and "reuse:0"s for each item; quoted errors the output are expected # all that's important in the output is that there are at least some "reuse:1"s and "reuse:0"s for each item; quoted errors in the output are expected
{ w𝕊x: { w𝕊x:
•Out "next" •Out "next"