Andreas Rumpf 73714e53f4 make more tests green %!s(int64=6) %!d(string=hai) anos
..
actiontable 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) %!s(int64=6) %!d(string=hai) anos
alias 000b8afd26 Remove expr/stmt (#5857) %!s(int64=7) %!d(string=hai) anos
ambsym 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
arithm 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) %!s(int64=6) %!d(string=hai) anos
array 36e34d9aed close #3899 by adding test case (#10424) %!s(int64=6) %!d(string=hai) anos
assert 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
assign 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
astoverload 20b5f31c03 new tester; all tests categorized %!s(int64=11) %!d(string=hai) anos
async 50d1a46537 better docs: osproc (#10708) %!s(int64=6) %!d(string=hai) anos
bind 0ebfcd4c0f Remove deprecated modules (asyncio, sockets, ftpclient) (#10401) %!s(int64=6) %!d(string=hai) anos
borrow 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
casestmt 43a0dd42bc Print missing case labels (#10600) %!s(int64=6) %!d(string=hai) anos
ccgbugs 631a8ab57f Fix edge case in type hashing (#10601) [backport] %!s(int64=6) %!d(string=hai) anos
clearmsg 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
closure 0ebfcd4c0f Remove deprecated modules (asyncio, sockets, ftpclient) (#10401) %!s(int64=6) %!d(string=hai) anos
cnstseq 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
collections 6ce3949c8a add `isNamedTuple`; make $(1, 2) be (1, 2) instead of (Field0: 1, Field1: 2) which leaked implementation detail (#10070) %!s(int64=6) %!d(string=hai) anos
compiler e17321aa24 improve formatting in assertEquals %!s(int64=6) %!d(string=hai) anos
compilerapi 2a4c09ff88 megatest can be executed %!s(int64=6) %!d(string=hai) anos
compiles 031bfdec6f make run the default action of a test in tester %!s(int64=6) %!d(string=hai) anos
concat 20b5f31c03 new tester; all tests categorized %!s(int64=11) %!d(string=hai) anos
concepts 28394153ab 32 bit fixes (#10608) %!s(int64=6) %!d(string=hai) anos
constr 3b783f7e13 Testament: refactoring; makes the test joiner green %!s(int64=6) %!d(string=hai) anos
constraints 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
constructors 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
controlflow 3b783f7e13 Testament: refactoring; makes the test joiner green %!s(int64=6) %!d(string=hai) anos
converter 28394153ab 32 bit fixes (#10608) %!s(int64=6) %!d(string=hai) anos
coroutines 354e3f2a40 disable flaky coroutines test %!s(int64=6) %!d(string=hai) anos
cpp 15584879b9 Properly wrap discarded statements (#10322) %!s(int64=6) %!d(string=hai) anos
defaultprocparam e012eb1001 updated tests to be executed %!s(int64=6) %!d(string=hai) anos
deprecated ec6e5681da fix #8063 by adding a testcase for: Deprecation warnings for enum values print twice (#10508) %!s(int64=6) %!d(string=hai) anos
deps 0d99ff6113 testament megatest: furher refactorings making more tests green %!s(int64=6) %!d(string=hai) anos
destructor f39aa1b40b discard destroys its argument in-place (#9478) %!s(int64=6) %!d(string=hai) anos
dir with space fa058773db fixes #10042 (allow spaces in import) (#10504) %!s(int64=6) %!d(string=hai) anos
discard ab72d68ec8 fix off by 1 error in `col` shown by toFileLineCol (#10138) %!s(int64=6) %!d(string=hai) anos
distinct a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
dll 9c2365d5c2 activated more tests, allow input in test spec %!s(int64=6) %!d(string=hai) anos
effects f55d094cf2 fixes #6955 %!s(int64=6) %!d(string=hai) anos
enum e7878c0d08 add tests for recently closed issues (#10722) %!s(int64=6) %!d(string=hai) anos
errmsgs e89aaaeaab Open a new scope for `static:` expr blocks (#10649) %!s(int64=6) %!d(string=hai) anos
exception 942495611b revive #10228 (fix #9880) (#10610) %!s(int64=6) %!d(string=hai) anos
exprs 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
fields 3c9fcc4c30 Merge tests into a larger file (part 2 of ∞) (#9335) %!s(int64=6) %!d(string=hai) anos
flags 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
float 4355f23ee5 fix #10305 nim cpp is now nan-correct at CT (#10310) %!s(int64=6) %!d(string=hai) anos
fragmentation 381498b0db tests: disable flaky tests for now; closes #9421 %!s(int64=6) %!d(string=hai) anos
friends e80465dacf tests: Trim .nim files trailing whitespace %!s(int64=9) %!d(string=hai) anos
gc 2371b4be96 ported havlak and gcbench benchmarks to work with --gc:regions %!s(int64=6) %!d(string=hai) anos
generics 28394153ab 32 bit fixes (#10608) %!s(int64=6) %!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 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
implicit a5ecbf823f lots of small changes %!s(int64=6) %!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 9c2365d5c2 activated more tests, allow input in test spec %!s(int64=6) %!d(string=hai) anos
iter e7878c0d08 add tests for recently closed issues (#10722) %!s(int64=6) %!d(string=hai) anos
js 257965e105 fixes 10697 [backport] %!s(int64=6) %!d(string=hai) anos
lent c99f952dfb basic 'lent T' test works %!s(int64=7) %!d(string=hai) anos
let 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
lexer 34815a4697 megatest: make it green on Linux %!s(int64=6) %!d(string=hai) anos
lookups e012eb1001 updated tests to be executed %!s(int64=6) %!d(string=hai) anos
macros 6e869a73d3 make macro tests green again %!s(int64=6) %!d(string=hai) anos
magics 34815a4697 megatest: make it green on Linux %!s(int64=6) %!d(string=hai) anos
manyloc 55fb838785 Merge branch 'devel' into araq-nkexportdoc %!s(int64=6) %!d(string=hai) anos
metatype 1899d8d107 make tests green again %!s(int64=6) %!d(string=hai) anos
method ab72d68ec8 fix off by 1 error in `col` shown by toFileLineCol (#10138) %!s(int64=6) %!d(string=hai) anos
misc e7878c0d08 add tests for recently closed issues (#10722) %!s(int64=6) %!d(string=hai) anos
modules 444f2231c9 make tests green again %!s(int64=6) %!d(string=hai) anos
namedparams 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
newconfig 562d185cb7 cleanup tests; don't use non-working 'msg' spec field %!s(int64=6) %!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 fbd6743ea1 fix sdl_test test that failed in CI cpp mode (#10314) %!s(int64=6) %!d(string=hai) anos
notnil 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
objects f31d1fa98b fixes #10195 %!s(int64=6) %!d(string=hai) anos
objvariant bdb67201b2 fixes #10033 [backport] %!s(int64=6) %!d(string=hai) anos
openarray 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
osproc f18fcf65b3 make tests green again %!s(int64=6) %!d(string=hai) anos
overflw 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
overload 07a0a61875 fixes #9149 [backport] %!s(int64=6) %!d(string=hai) anos
package_level_objects c17f6c7837 new feature: package level objects %!s(int64=7) %!d(string=hai) anos
parallel 55fb838785 Merge branch 'devel' into araq-nkexportdoc %!s(int64=6) %!d(string=hai) anos
parser 73714e53f4 make more tests green %!s(int64=6) %!d(string=hai) anos
pragmas e7878c0d08 add tests for recently closed issues (#10722) %!s(int64=6) %!d(string=hai) anos
proc 8922063bd8 typed/untyped return type is invalid for everything except templates and macros (#10275) %!s(int64=6) %!d(string=hai) anos
procvar 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) %!s(int64=6) %!d(string=hai) anos
range 71df1b060b Tighten the conversion from tyRange to scalar types (#10495) %!s(int64=6) %!d(string=hai) anos
rational 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
realtimeGC b26378a468 WIP, most tests are now skipped %!s(int64=6) %!d(string=hai) anos
rodfiles 72dfe176f5 remove dead code elimination option (#7669) %!s(int64=6) %!d(string=hai) anos
seq 3b783f7e13 Testament: refactoring; makes the test joiner green %!s(int64=6) %!d(string=hai) anos
sets 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
showoff 6df6ec27ec Improved collection-to-string behavior (#6825) %!s(int64=7) %!d(string=hai) anos
specialops 547961f71e dotops: add a simple object delegation test %!s(int64=7) %!d(string=hai) anos
statictypes d9ee377517 fix #10339 by returning type attached to nkEmpty (#10370) %!s(int64=6) %!d(string=hai) anos
stdlib 28a83a8388 Handle IPv6 in bindAddr #7633 %!s(int64=6) %!d(string=hai) anos
system 1ae61767f8 disable talloc2 on 32 bits (#10656) %!s(int64=6) %!d(string=hai) anos
template e7878c0d08 add tests for recently closed issues (#10722) %!s(int64=6) %!d(string=hai) anos
testament f9d58b9305 lots of testament bug fixes and improvements: (#10044) %!s(int64=6) %!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 5345c5b130 remove deprecated modules (#10215) %!s(int64=6) %!d(string=hai) anos
trmacros 825e08b046 fixes #7524 %!s(int64=6) %!d(string=hai) anos
tuples 9884129058 Tuple unpacking now works for `for` vars (#10152) %!s(int64=6) %!d(string=hai) anos
typerel 6825430831 Restrict ptr/ref to ptr/ref implicit conversion (#10411) %!s(int64=6) %!d(string=hai) anos
types e7878c0d08 add tests for recently closed issues (#10722) %!s(int64=6) %!d(string=hai) anos
untestable a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
usingstmt 3b783f7e13 Testament: refactoring; makes the test joiner green %!s(int64=6) %!d(string=hai) anos
varres 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
varstmt 3b783f7e13 Testament: refactoring; makes the test joiner green %!s(int64=6) %!d(string=hai) anos
vm 394c6f5576 fixes merge conflict %!s(int64=6) %!d(string=hai) anos
config.nims b8f4ff8b9f followup on #10573: prevent common user config to interfere with testament (excessiveStackTrace) (#10590) %!s(int64=6) %!d(string=hai) anos
dummy.txt a68a4bfaf2 Remove install.txt and readme.txt (#9521) %!s(int64=6) %!d(string=hai) anos
js.html 72a3e21f28 Removes executable bit for text files. %!s(int64=12) %!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 97738a4f28 Testament pre parallel (#9137) %!s(int64=6) %!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 da57c0ab99 remove `subexes` %!s(int64=6) %!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.