Araq 5091599822 merged branches %!s(int64=7) %!d(string=hai) anos
..
actiontable 63f9385327 Rename mget to `[]` %!s(int64=9) %!d(string=hai) anos
alias 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
ambsym e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
arithm bbeadf184e Removed platform-specific arithm test cases (#6189) %!s(int64=7) %!d(string=hai) anos
array ea47234b35 Array typedesc len (#6032) %!s(int64=7) %!d(string=hai) anos
assert 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
assign e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
astoverload 20b5f31c03 new tester; all tests categorized %!s(int64=11) %!d(string=hai) anos
async 55cb959a68 make tests green again; closes #5861 %!s(int64=7) %!d(string=hai) anos
benchmarks e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
bind 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
borrow e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
caas fd4e629905 Rename PNimrodNode to NimNode %!s(int64=9) %!d(string=hai) anos
casestmt ddc131cf07 the parser finally parses 'echo {1,2}' as it should %!s(int64=7) %!d(string=hai) anos
ccgbugs 9485f1c888 make tests green again %!s(int64=7) %!d(string=hai) anos
clearmsg a3f19c87fb lift parameter-less do block to lambdas %!s(int64=7) %!d(string=hai) anos
closure 9570c6e6f4 Add a test-case for #1641 %!s(int64=7) %!d(string=hai) anos
cnstseq e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
collections 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
compiles 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
concat 20b5f31c03 new tester; all tests categorized %!s(int64=11) %!d(string=hai) anos
concepts 9485f1c888 make tests green again %!s(int64=7) %!d(string=hai) anos
constr ddc131cf07 the parser finally parses 'echo {1,2}' as it should %!s(int64=7) %!d(string=hai) anos
constraints e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
constructors 5c7ae14074 Fixes #5965 (#6237) %!s(int64=7) %!d(string=hai) anos
controlflow e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
converter 4d5c0027e6 fixes #4537 %!s(int64=8) %!d(string=hai) anos
coroutines 3ffde39cf4 attempt to make travis OSX tests green and mandatory %!s(int64=7) %!d(string=hai) anos
cpp a75f3b3661 fixes #4910 %!s(int64=7) %!d(string=hai) anos
defaultprocparam 20b5f31c03 new tester; all tests categorized %!s(int64=11) %!d(string=hai) anos
deprecated ee57bb3e3e fixes --gc:none regression; made some tests green %!s(int64=9) %!d(string=hai) anos
destructor db99c91679 destructors: supportsCopyMem finally works for recursive types %!s(int64=7) %!d(string=hai) anos
dir with space e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
discard 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
distinct 16260b23c7 make tests on Windows green %!s(int64=8) %!d(string=hai) anos
dll e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
effects e6f0bff6dd make tests green again %!s(int64=7) %!d(string=hai) anos
enum 51cd3bd86f Fixes #5062 (#5527); JS: holes in enums %!s(int64=7) %!d(string=hai) anos
errmsgs a6006e56a7 Fix #4737 %!s(int64=7) %!d(string=hai) anos
exception 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
exprs d02486aa48 compiler: better error messages (#5613) %!s(int64=7) %!d(string=hai) anos
fields 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
float 55cb959a68 make tests green again; closes #5861 %!s(int64=7) %!d(string=hai) anos
friends e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
gc c9a2acefc1 fix %!s(int64=7) %!d(string=hai) anos
generics 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
gensym 7132b04f44 equality check on NimSym has now support in the VM; refs #6139 %!s(int64=7) %!d(string=hai) anos
global e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
implicit 865d341b32 unsigned array indexes work better; minor cleanups %!s(int64=10) %!d(string=hai) anos
import_in_config 154db46db8 fixes a regression that caused --import in a config file to break things %!s(int64=8) %!d(string=hai) anos
init e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
iter 27e89eef6b closes #3583 %!s(int64=7) %!d(string=hai) anos
js e8eb496e6f make tests green again %!s(int64=7) %!d(string=hai) anos
let cb3c99fe1f Fix tests some more %!s(int64=9) %!d(string=hai) anos
lexer 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
lookups 5d56361383 fixes #4353 %!s(int64=8) %!d(string=hai) anos
macros 68c7da227f make tests green again %!s(int64=7) %!d(string=hai) anos
magics ddc131cf07 the parser finally parses 'echo {1,2}' as it should %!s(int64=7) %!d(string=hai) anos
manyloc 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
metatype 22684370b0 remove ArrayDummySize with unchecked arrays (#5818) %!s(int64=7) %!d(string=hai) anos
method f151b7efd1 added missing test for methods %!s(int64=7) %!d(string=hai) anos
misc 8cdd89f456 make tests green again %!s(int64=7) %!d(string=hai) anos
modules dfe067a74a reorder pass: consider the 'using' statement; disabled debug output %!s(int64=7) %!d(string=hai) anos
namedparams e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
newconfig b67ea9e73b fixes #6327 %!s(int64=7) %!d(string=hai) anos
nimble 90fa64501f Implement .nimble-link files in the compiler and add tests for them. %!s(int64=7) %!d(string=hai) anos
niminaction 9d4f5c6d2c enable unguarded_access test %!s(int64=7) %!d(string=hai) anos
notnil 564c0acae2 cleaned up the code and implemented proper error messages %!s(int64=7) %!d(string=hai) anos
objects 21e22624a2 fixes #6294 %!s(int64=7) %!d(string=hai) anos
objvariant 0ce26313a4 Add test for objvariant construction order %!s(int64=7) %!d(string=hai) anos
openarray aebad711ea fixed #2240 and #3586 %!s(int64=9) %!d(string=hai) anos
osproc c39e202976 Introduce first class support for Android (#5772) %!s(int64=7) %!d(string=hai) anos
overflw e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
overload 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
parallel 3d543b1539 Channels can now block depending on maxItems (#6153) %!s(int64=7) %!d(string=hai) anos
parser 7ad115f530 Restore the old behavior of parsing "quote do:" %!s(int64=7) %!d(string=hai) anos
pragmas 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
proc e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
procvar e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
range 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
rational ce18b85d2c add two test: %!s(int64=9) %!d(string=hai) anos
realtimeGC 567b7d5a6a tests: Trim .txt files trailing whitespace %!s(int64=9) %!d(string=hai) anos
rodfiles 7630cd076b updated test case %!s(int64=8) %!d(string=hai) anos
seq 3c773c189f fixes #4973 %!s(int64=8) %!d(string=hai) anos
sets d1f6ddfd64 Add counterpart to containsOrIncl for excl (#6360) %!s(int64=7) %!d(string=hai) anos
showoff 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
specialops 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
statictypes 36c4f0a89c close #1051 %!s(int64=7) %!d(string=hai) anos
stdlib ce04288d64 isAlphaNumberic and isDigit improvement + tests (#6579) %!s(int64=7) %!d(string=hai) anos
system 55cb959a68 make tests green again; closes #5861 %!s(int64=7) %!d(string=hai) anos
template 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
testament fa02ffaeba made 'testament all' run in parallel %!s(int64=7) %!d(string=hai) anos
testdata abe5cb82a0 Fix for #5134 (parseJson(string) should fail on leftover data) (#5203) %!s(int64=8) %!d(string=hai) anos
threads ddc131cf07 the parser finally parses 'echo {1,2}' as it should %!s(int64=7) %!d(string=hai) anos
trmacros 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
tuples 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
typerel 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
types 57edf619fe fixes #6016 union alias trigger bad codegen (#6117) %!s(int64=7) %!d(string=hai) anos
untestable 61a50d9c8c Fixes #6571 (#6578) %!s(int64=7) %!d(string=hai) anos
usingstmt 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
varres ddc131cf07 the parser finally parses 'echo {1,2}' as it should %!s(int64=7) %!d(string=hai) anos
varstmt e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
vm ddc131cf07 the parser finally parses 'echo {1,2}' as it should %!s(int64=7) %!d(string=hai) anos
benchmark.nim e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
js.html 72a3e21f28 Removes executable bit for text files. %!s(int64=11) %!d(string=hai) anos
js.nim e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
mmaptest.nim e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
readme.md 9b465a2361 Add readme to tests. Add fileDir option to testament & create nimble test. %!s(int64=7) %!d(string=hai) anos
rectest.nim e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
stckovfl.nim e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
test_nimscript.nims 2c146445bc Added deques module, deprecating queues %!s(int64=8) %!d(string=hai) anos

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.