Miran 66a76d3165 Merge tests into a larger file (part 8 of ∞) (#9583) 6 anni fa
..
actiontable 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) 6 anni fa
alias 000b8afd26 Remove expr/stmt (#5857) 7 anni fa
ambsym e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
arithm 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) 6 anni fa
array e71410d74e language cleanup: the .unchecked pragma is dead 6 anni fa
assert 3e2d8c1c53 correctly render AST in doAssert/assert condition: fixes #8518; refs #9301 (#9332) 6 anni fa
assign 1475697fbf make tests green again 6 anni fa
astoverload 20b5f31c03 new tester; all tests categorized 11 anni fa
async 95504caa31 make some tests faster (#9413) 6 anni fa
benchmarks c804b606f9 make tests\benchmarks programs compile again 6 anni fa
bind 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) 6 anni fa
borrow e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
caas fd4e629905 Rename PNimrodNode to NimNode 10 anni fa
casestmt eb6225ad8c fixes #9276 (#9317) 6 anni fa
ccgbugs 7ae6b7e9a2 make more tests green for C++; refs #7870 6 anni fa
clearmsg b57d14b1ae make more tests green 7 anni fa
closure 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
cnstseq 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) 6 anni fa
collections 95504caa31 make some tests faster (#9413) 6 anni fa
compilerapi a58c982a49 test case for #9180 and re-enables the disabled tcompilerapi test (#9181) 6 anni fa
compiles 531c66d1ec Allow taking address of skForVar variables (#8632) 6 anni fa
concat 20b5f31c03 new tester; all tests categorized 11 anni fa
concepts 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
constr ddc131cf07 the parser finally parses 'echo {1,2}' as it should 7 anni fa
constraints b57d14b1ae make more tests green 7 anni fa
constructors 74fe7a800b make tests green again 6 anni fa
controlflow 3c9fcc4c30 Merge tests into a larger file (part 2 of ∞) (#9335) 6 anni fa
converter 16a70c84aa Fixes 6544 (#9427) 6 anni fa
coroutines 3ffde39cf4 attempt to make travis OSX tests green and mandatory 8 anni fa
cpp 432a4d1787 fixes #5549 6 anni fa
defaultprocparam 20b5f31c03 new tester; all tests categorized 11 anni fa
deprecated cf20c4460c More robust handling of deprecated pragmas (#8696) 6 anni fa
deps fba9c2aef6 make tests green again 6 anni fa
destructor 2eff0ca2b8 added test case for #9594 6 anni fa
dir with space e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
discard 787687727a fixes #9076 6 anni fa
distinct 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
dll e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
effects ae82406c8b make tests green again 6 anni fa
enum eb946f37a7 fixes #8671; show helpful msg (lookup symbol, eg iterator) on 'attempting to call undeclared routine' error (#8786) 6 anni fa
errmsgs eb946f37a7 fixes #8671; show helpful msg (lookup symbol, eg iterator) on 'attempting to call undeclared routine' error (#8786) 6 anni fa
exception dfb8730f51 Implements #9434. Minimal Stacktrace for Exceptions in release mode (#9480) 6 anni fa
exprs 32afc1a562 make tests green again 6 anni fa
fields 3c9fcc4c30 Merge tests into a larger file (part 2 of ∞) (#9335) 6 anni fa
flags e931f3b5a9 Fixes #802, #803 and #3775 - genscript issues (#7677) 7 anni fa
float da178e4090 make `mod` on floats available in the VM (#9591) 6 anni fa
fragmentation 381498b0db tests: disable flaky tests for now; closes #9421 6 anni fa
friends e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
gc 81e33b9d87 make thavlak and tmarkerproc_regression tests take fewer iterations in order to speedup the CIs 6 anni fa
generics 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
gensym 7132b04f44 equality check on NimSym has now support in the VM; refs #6139 7 anni fa
global 9543689306 Make `static` blocks introduce their own scope 6 anni fa
implicit 3c9fcc4c30 Merge tests into a larger file (part 2 of ∞) (#9335) 6 anni fa
import_in_config 154db46db8 fixes a regression that caused --import in a config file to break things 8 anni fa
init ebf4e9f717 Extend init variable tracking to tuple assignments (#8321) 6 anni fa
iter 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
js 2b03bed2db Fix printing and comparing uninitialized strings 6 anni fa
lent c99f952dfb basic 'lent T' test works 7 anni fa
let 4d9aec1858 Revert #7964 6 anni fa
lexer 163e9de3c2 Unicode escape in string literals (#9390) 6 anni fa
lookups 5d56361383 fixes #4353 8 anni fa
macros e9ed4dccb6 Quote do now works with result in block (#7343) 6 anni fa
magics b613092de8 Don't crash if GC_{un,}ref is called on nil (#9445) 6 anni fa
manyloc 78e2b515a2 make nake test compile again 6 anni fa
metatype 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
method 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
misc 2bc016b172 Add test for #6836 (#9602) 6 anni fa
modules 02306020b2 fix test 6 anni fa
namedparams b57d14b1ae make more tests green 7 anni fa
newconfig 7ee6774fb7 travis: run 'koch testinstall' on OSX 6 anni fa
nimble 90fa64501f Implement .nimble-link files in the compiler and add tests for them. 7 anni fa
niminaction 9e86237855 Adds smaller code samples from Chapters 1-3 to the tester. 6 anni fa
notnil f91a181f58 make tests green again 6 anni fa
objects 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
objvariant 02b78d3f94 make tests green again 6 anni fa
openarray 3588240226 Always check the deduced type validity for result 6 anni fa
osproc bacf08e65d merged #8624 manually; fixes #8442; closes #8575 6 anni fa
overflw 78cbf6734a Added more tests to toverflw 6 anni fa
overload 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
package_level_objects c17f6c7837 new feature: package level objects 7 anni fa
parallel 95504caa31 make some tests faster (#9413) 6 anni fa
parser 1fa22d4cfe removed the undocumented #? strongSpaces parsing mode 6 anni fa
pragmas 33458894da Fix overload resolution for pragmas evaluation (#8902) 6 anni fa
proc 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) 6 anni fa
procvar 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) 6 anni fa
range 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) 6 anni fa
rational 1548743856 make tests green again 7 anni fa
realtimeGC 73af427f23 Fix longgc category tests (#7095) 7 anni fa
rodfiles 72dfe176f5 remove dead code elimination option (#7669) 7 anni fa
seq 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) 6 anni fa
sets 1b17c9f693 More descriptive names of test files (#9531) 6 anni fa
showoff 6df6ec27ec Improved collection-to-string behavior (#6825) 7 anni fa
specialops 547961f71e dotops: add a simple object delegation test 7 anni fa
statictypes b8d2f79ef0 Prevent the construction of recursive tyStatic types (#9256) 6 anni fa
stdlib 9899c4525c Add parsing empty attribs to htmlparser (#9559) 6 anni fa
system 1b3725e395 Add `toOpenArray[T](ptr UncheckedArray[T])` for clarity. (#9316) 6 anni fa
template 66a76d3165 Merge tests into a larger file (part 8 of ∞) (#9583) 6 anni fa
testdata abe5cb82a0 Fix for #5134 (parseJson(string) should fail on leftover data) (#5203) 8 anni fa
threads a68a4bfaf2 Remove install.txt and readme.txt (#9521) 6 anni fa
trmacros 66a76d3165 Merge tests into a larger file (part 8 of ∞) (#9583) 6 anni fa
tuples 66a76d3165 Merge tests into a larger file (part 8 of ∞) (#9583) 6 anni fa
typerel 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) 6 anni fa
types 5ddeead29c #9348 Merge some small test files (#9561) 6 anni fa
untestable 282c4f3d0a file mode bullshit 6 anni fa
usingstmt 000b8afd26 Remove expr/stmt (#5857) 7 anni fa
varres dc5851e873 added a test to ensure that for-loop-variables cannot be mutated 6 anni fa
varstmt e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
vm 5ddeead29c #9348 Merge some small test files (#9561) 6 anni fa
benchmark.nim e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
dummy.txt a68a4bfaf2 Remove install.txt and readme.txt (#9521) 6 anni fa
js.html 72a3e21f28 Removes executable bit for text files. 12 anni fa
js.nim e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
mmaptest.nim e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
readme.md 97738a4f28 Testament pre parallel (#9137) 6 anni fa
rectest.nim e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
stckovfl.nim e80465dacf tests: Trim .nim files trailing whitespace 9 anni fa
test_nimscript.nims abec8823aa bugfix: make 'macros' module available for nimscript 7 anni fa

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.