Andreas Rumpf 675b6f0773 fixes #9978 %!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 ac785b0623 testament: joinable is now an explicit concept of a test spec %!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 a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
bind a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
borrow 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
casestmt 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
ccgbugs a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
clearmsg 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
closure f3d2c18a12 attempt to make travis green %!s(int64=6) %!d(string=hai) anos
cnstseq 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
collections ac785b0623 testament: joinable is now an explicit concept of a test spec %!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 3859878db8 megatest checks output and nimout %!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 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
coroutines 27a9e369de fix coro test %!s(int64=6) %!d(string=hai) anos
cpp a29ec40032 join simple test %!s(int64=6) %!d(string=hai) anos
defaultprocparam e012eb1001 updated tests to be executed %!s(int64=6) %!d(string=hai) anos
deprecated 1105d03644 require errormsg to be specified before file. %!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 ac785b0623 testament: joinable is now an explicit concept of a test spec %!s(int64=6) %!d(string=hai) anos
dir with space e012eb1001 updated tests to be executed %!s(int64=6) %!d(string=hai) anos
discard a5ecbf823f lots of small changes %!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 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
enum 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
errmsgs a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
exception 1105d03644 require errormsg to be specified before file. %!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 3b783f7e13 Testament: refactoring; makes the test joiner green %!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 81e33b9d87 make thavlak and tmarkerproc_regression tests take fewer iterations in order to speedup the CIs %!s(int64=6) %!d(string=hai) anos
generics 34815a4697 megatest: make it green on Linux %!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 3b783f7e13 Testament: refactoring; makes the test joiner green %!s(int64=6) %!d(string=hai) anos
js a5ecbf823f lots of small changes %!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 34815a4697 megatest: make it green on Linux %!s(int64=6) %!d(string=hai) anos
magics 34815a4697 megatest: make it green on Linux %!s(int64=6) %!d(string=hai) anos
manyloc 4d616b5dc4 make tests green; better output for when megatest execution fails %!s(int64=6) %!d(string=hai) anos
metatype 3b783f7e13 Testament: refactoring; makes the test joiner green %!s(int64=6) %!d(string=hai) anos
method 0d99ff6113 testament megatest: furher refactorings making more tests green %!s(int64=6) %!d(string=hai) anos
misc bb1ce398af Merge pull request #9881 from timotheecour/pr_ref_9880 %!s(int64=6) %!d(string=hai) anos
modules 675b6f0773 fixes #9978 %!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 a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
notnil 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
objects e4ae7a8929 Merge pull request #8748 from LemonBoy/when-in-objects %!s(int64=6) %!d(string=hai) anos
objvariant 1105d03644 require errormsg to be specified before file. %!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 3859878db8 megatest checks output and nimout %!s(int64=6) %!d(string=hai) anos
package_level_objects c17f6c7837 new feature: package level objects %!s(int64=7) %!d(string=hai) anos
parallel a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
parser 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
pragmas d9ae9201c4 Merge pull request #9937 from cooldome/pragmablock_custom_pragma %!s(int64=6) %!d(string=hai) anos
proc 1105d03644 require errormsg to be specified before file. %!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 1105d03644 require errormsg to be specified before file. %!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=7) %!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 a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
stdlib ce9815bcf5 os.nim: use the new pathnorm.normalizePath implementation %!s(int64=6) %!d(string=hai) anos
system ac785b0623 testament: joinable is now an explicit concept of a test spec %!s(int64=6) %!d(string=hai) anos
template 3b783f7e13 Testament: refactoring; makes the test joiner green %!s(int64=6) %!d(string=hai) anos
testament fb1f5c62b5 tshouldfail is stricter %!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 a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
trmacros 1105d03644 require errormsg to be specified before file. %!s(int64=6) %!d(string=hai) anos
tuples a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
typerel a5ecbf823f lots of small changes %!s(int64=6) %!d(string=hai) anos
types ac785b0623 testament: joinable is now an explicit concept of a test spec %!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 3b783f7e13 Testament: refactoring; makes the test joiner green %!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 8d850f7a69 deprecated ospaths (#9665) %!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.