Neelesh Chandola 7c5ae00887 exportc is now not allowed for type aliases (#9979) 6 lat temu
..
actiontable 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) 6 lat temu
alias 000b8afd26 Remove expr/stmt (#5857) 7 lat temu
ambsym 1105d03644 require errormsg to be specified before file. 6 lat temu
arithm 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) 6 lat temu
array ac785b0623 testament: joinable is now an explicit concept of a test spec 6 lat temu
assert 1105d03644 require errormsg to be specified before file. 6 lat temu
assign 1105d03644 require errormsg to be specified before file. 6 lat temu
astoverload 20b5f31c03 new tester; all tests categorized 11 lat temu
async 4a6d699bc5 C++: make async tests green on Windows 6 lat temu
bind a5ecbf823f lots of small changes 6 lat temu
borrow 1105d03644 require errormsg to be specified before file. 6 lat temu
casestmt 1105d03644 require errormsg to be specified before file. 6 lat temu
ccgbugs 82c009a2cb Dead code elimination for entire modules and their init procs if empty (#10032) 6 lat temu
clearmsg 1105d03644 require errormsg to be specified before file. 6 lat temu
closure f3d2c18a12 attempt to make travis green 6 lat temu
cnstseq 1105d03644 require errormsg to be specified before file. 6 lat temu
collections ac785b0623 testament: joinable is now an explicit concept of a test spec 6 lat temu
compilerapi 2a4c09ff88 megatest can be executed 6 lat temu
compiles 031bfdec6f make run the default action of a test in tester 6 lat temu
concat 20b5f31c03 new tester; all tests categorized 11 lat temu
concepts 3859878db8 megatest checks output and nimout 6 lat temu
constr 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
constraints 1105d03644 require errormsg to be specified before file. 6 lat temu
constructors 1105d03644 require errormsg to be specified before file. 6 lat temu
controlflow 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
converter 1105d03644 require errormsg to be specified before file. 6 lat temu
coroutines 27a9e369de fix coro test 6 lat temu
cpp 7c90e22ddd fixes #10148 (#10149) 6 lat temu
defaultprocparam e012eb1001 updated tests to be executed 6 lat temu
deprecated cbbdcb2669 Show deprecation warning for fields of a deprecated enum (#10112) 6 lat temu
deps 0d99ff6113 testament megatest: furher refactorings making more tests green 6 lat temu
destructor ac785b0623 testament: joinable is now an explicit concept of a test spec 6 lat temu
dir with space e012eb1001 updated tests to be executed 6 lat temu
discard ab72d68ec8 fix off by 1 error in `col` shown by toFileLineCol (#10138) 6 lat temu
distinct a5ecbf823f lots of small changes 6 lat temu
dll 9c2365d5c2 activated more tests, allow input in test spec 6 lat temu
effects 1105d03644 require errormsg to be specified before file. 6 lat temu
enum c5ad4c10cb Deprecated pragma is now supported on enum fields (#10113) 6 lat temu
errmsgs 1b7c8482fe fixes #10101 (#10103) 6 lat temu
exception 1105d03644 require errormsg to be specified before file. 6 lat temu
exprs 1105d03644 require errormsg to be specified before file. 6 lat temu
fields 3c9fcc4c30 Merge tests into a larger file (part 2 of ∞) (#9335) 6 lat temu
flags 1105d03644 require errormsg to be specified before file. 6 lat temu
float 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
fragmentation 381498b0db tests: disable flaky tests for now; closes #9421 6 lat temu
friends e80465dacf tests: Trim .nim files trailing whitespace 9 lat temu
gc 81e33b9d87 make thavlak and tmarkerproc_regression tests take fewer iterations in order to speedup the CIs 6 lat temu
generics 34815a4697 megatest: make it green on Linux 6 lat temu
gensym 7132b04f44 equality check on NimSym has now support in the VM; refs #6139 7 lat temu
global 1105d03644 require errormsg to be specified before file. 6 lat temu
implicit a5ecbf823f lots of small changes 6 lat temu
import_in_config 154db46db8 fixes a regression that caused --import in a config file to break things 8 lat temu
init 9c2365d5c2 activated more tests, allow input in test spec 6 lat temu
iter 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
js aadbdd6b06 Support undefined in isNil (#9960) 6 lat temu
lent c99f952dfb basic 'lent T' test works 7 lat temu
let 1105d03644 require errormsg to be specified before file. 6 lat temu
lexer 34815a4697 megatest: make it green on Linux 6 lat temu
lookups e012eb1001 updated tests to be executed 6 lat temu
macros 34815a4697 megatest: make it green on Linux 6 lat temu
magics 34815a4697 megatest: make it green on Linux 6 lat temu
manyloc 82c009a2cb Dead code elimination for entire modules and their init procs if empty (#10032) 6 lat temu
metatype a6633b9658 fix typetraits.`$` regression https://github.com/c-blake/cligen/issues/84 (#10131) 6 lat temu
method ab72d68ec8 fix off by 1 error in `col` shown by toFileLineCol (#10138) 6 lat temu
misc 062d7e3a39 fixes #10082 6 lat temu
modules ab72d68ec8 fix off by 1 error in `col` shown by toFileLineCol (#10138) 6 lat temu
namedparams 1105d03644 require errormsg to be specified before file. 6 lat temu
newconfig 562d185cb7 cleanup tests; don't use non-working 'msg' spec field 6 lat temu
nimble 90fa64501f Implement .nimble-link files in the compiler and add tests for them. 7 lat temu
niminaction a5ecbf823f lots of small changes 6 lat temu
notnil 1105d03644 require errormsg to be specified before file. 6 lat temu
objects e4ae7a8929 Merge pull request #8748 from LemonBoy/when-in-objects 6 lat temu
objvariant bdb67201b2 fixes #10033 [backport] 6 lat temu
openarray 1105d03644 require errormsg to be specified before file. 6 lat temu
osproc f18fcf65b3 make tests green again 6 lat temu
overflw 1105d03644 require errormsg to be specified before file. 6 lat temu
overload 3859878db8 megatest checks output and nimout 6 lat temu
package_level_objects c17f6c7837 new feature: package level objects 7 lat temu
parallel a5ecbf823f lots of small changes 6 lat temu
parser 1105d03644 require errormsg to be specified before file. 6 lat temu
pragmas 7c5ae00887 exportc is now not allowed for type aliases (#9979) 6 lat temu
proc 730b1b2b87 proc does not take untyped/typed as argument (#9981) 6 lat temu
procvar 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) 6 lat temu
range 1105d03644 require errormsg to be specified before file. 6 lat temu
rational 1105d03644 require errormsg to be specified before file. 6 lat temu
realtimeGC b26378a468 WIP, most tests are now skipped 6 lat temu
rodfiles 72dfe176f5 remove dead code elimination option (#7669) 6 lat temu
seq 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
sets 1105d03644 require errormsg to be specified before file. 6 lat temu
showoff 6df6ec27ec Improved collection-to-string behavior (#6825) 7 lat temu
specialops 547961f71e dotops: add a simple object delegation test 7 lat temu
statictypes a5ecbf823f lots of small changes 6 lat temu
stdlib 7ac1fc81fd Resolve things raised in https://github.com/nim-lang/Nim/issues/10081 ? (#10084) 6 lat temu
system 0831292863 revives: Move typetraits.`$` to system. Fixes #5827 (#10071) 6 lat temu
template 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
testament f9d58b9305 lots of testament bug fixes and improvements: (#10044) 6 lat temu
testdata abe5cb82a0 Fix for #5134 (parseJson(string) should fail on leftover data) (#5203) 8 lat temu
threads a5ecbf823f lots of small changes 6 lat temu
trmacros 1105d03644 require errormsg to be specified before file. 6 lat temu
tuples cc4720fac1 Const tuple unpacking: add tests (#10100) 6 lat temu
typerel a5ecbf823f lots of small changes 6 lat temu
types ac785b0623 testament: joinable is now an explicit concept of a test spec 6 lat temu
untestable a5ecbf823f lots of small changes 6 lat temu
usingstmt 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
varres 1105d03644 require errormsg to be specified before file. 6 lat temu
varstmt 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
vm e87910197a Check there are no side effects before optimizing away compile time expressions. (#9934) 6 lat temu
dummy.txt a68a4bfaf2 Remove install.txt and readme.txt (#9521) 6 lat temu
js.html 72a3e21f28 Removes executable bit for text files. 11 lat temu
js.nim e80465dacf tests: Trim .nim files trailing whitespace 9 lat temu
mmaptest.nim e80465dacf tests: Trim .nim files trailing whitespace 9 lat temu
readme.md 97738a4f28 Testament pre parallel (#9137) 6 lat temu
rectest.nim e80465dacf tests: Trim .nim files trailing whitespace 9 lat temu
stckovfl.nim e80465dacf tests: Trim .nim files trailing whitespace 9 lat temu
test_nimscript.nims 8d850f7a69 deprecated ospaths (#9665) 6 lat temu

readme.md

This directory contains the test cases.

Each test must have a filename of the form: t*.nim

Note: Tests are only compiled by default. In order to get the tester to execute the compiled binary, you need to specify a spec with an action key (see below for details).

Specs

Each test can contain a spec in a discard """ ... """ block.

Check out the parseSpec procedure in the specs module for a full and reliable reference

action

Specifies what action this test should take.

Default: compile

Options:

  • compile - compiles the module and fails the test if compilations fails.
  • run - compiles and runs the module, fails the test if compilation or execution of test code fails.
  • reject - compiles the module and fails the test if compilation succeeds.

There are certain spec keys that imply run, including output and outputsub.

cmd

Specifies the Nim command to use for compiling the test.

There are a number of variables that are replaced in this spec option:

  • $target - the compilation target, e.g. c.
  • $options - the options for the compiler.
  • $file - the filename of the test.
  • $filedir - the directory of the test file.

Example:

discard """
  cmd: "nim $target --nimblePath:./nimbleDir/simplePkgs $options $file"
"""

Categories

Each folder under this directory represents a test category, which can be tested by running koch tests cat <category>.

The folder rodfiles contains special tests that test incremental compilation via symbol files.

The folder dll contains simple DLL tests.

The folder realtimeGC contains a test for validating that the realtime GC can run properly without linking against the nimrtl.dll/so. It includes a C client and platform specific build files for manual compilation.