Clyybber af27e6bdea Fix #14396 (#14793) 4 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
align abea80376a fixes #13122 (#13126) 5 lat temu
ambsym 1105d03644 require errormsg to be specified before file. 6 lat temu
arc af27e6bdea Fix #14396 (#14793) 4 lat temu
arithm 2f557652d4 fix operators containing percent for VM usage (#13536) 4 lat temu
array 4c08e64e98 disallow typedesc in arrays & move existing checks to `types.typeAllowedAux` (#13261) 4 lat temu
assert da29222f86 init checks and 'out' parameters (#14521) 4 lat temu
assign bf2e052e6d fix rtti sizeof for varargs in global scope (#13125) [backport] 5 lat temu
astoverload 20b5f31c03 new tester; all tests categorized 11 lat temu
astspec 39290cf88c Fix spellings (#12277) [backport] 5 lat temu
async 1854d29781 scoped memory management (#14790) 4 lat temu
bind 45d1e55e72 Add testcases for #11811 and #14315 (#14726) 4 lat temu
borrow 4cb41f53f0 Add testcase for #14440 (#14771) 4 lat temu
casestmt 1854d29781 scoped memory management (#14790) 4 lat temu
ccgbugs af27e6bdea Fix #14396 (#14793) 4 lat temu
ccgbugs2 e7f280bd26 Remove deprecated stuff from stdlib (#14699) 4 lat temu
clearmsg 1105d03644 require errormsg to be specified before file. 6 lat temu
closure 48e7775ad1 Make the fields of `times.DateTime` private (#14197) 4 lat temu
cnstseq 1105d03644 require errormsg to be specified before file. 6 lat temu
collections e7f280bd26 Remove deprecated stuff from stdlib (#14699) 4 lat temu
compilepragma 7e9cda7dba fixes #10299 (#11324) 5 lat temu
compiler e909486e5c trunner was not actually being tested in non-CTFFI mode; minor testament cleanups (#14377) 4 lat temu
compilerapi 6b39b47abc hotfix: make tcompilerapi green again 4 lat temu
compilerfeatures 9ecb1aae80 new compiler feature: --expandMacro 5 lat temu
compiles 2acf74d458 delete list comprehension (#12392) 5 lat temu
concat 20b5f31c03 new tester; all tests categorized 11 lat temu
concepts 5d5df4a394 Clean out Deprecated proc (#14797) 4 lat temu
constr e749fc08e7 fixes #10943 (#10947) 5 lat temu
constraints 1105d03644 require errormsg to be specified before file. 6 lat temu
constructors be95f8fdfa Turn some of the errors back into warnings 4 lat temu
controlflow 299ddda5f6 Make unreachable code a warning instead of an error (#14816) 4 lat temu
converter dfe51d10a1 `addQuitProc` now works with closures, and c, js(node/browser) backend; fix some bugs in testament (#14342) 4 lat temu
coroutines e35b21e553 Close#5586 (#14682) 4 lat temu
cpp 142c59fc37 fix typos and deprecation warnings for tconvariancerules.nim (#13772) 4 lat temu
defaultprocparam e012eb1001 updated tests to be executed 6 lat temu
deprecated ec6e5681da fix #8063 by adding a testcase for: Deprecation warnings for enum values print twice (#10508) 5 lat temu
deps e7f280bd26 Remove deprecated stuff from stdlib (#14699) 4 lat temu
destructor 1854d29781 scoped memory management (#14790) 4 lat temu
dir with space fa058773db fixes #10042 (allow spaces in import) (#10504) 5 lat temu
discard 7f1d2489ad improve the 'has to be discarded' error message 4 lat temu
distinct de1ede77fe fixes #11715 (#11721) 5 lat temu
distros e63fc95bd4 fix tdistros test which was failing on Nightlies 4 lat temu
dll 89a15e417d CI openbsd: 3x batching via NIM_TESTAMENT_BATCH ; overall CI finishes in 21m instead of 34m (#14851) 4 lat temu
effects da29222f86 init checks and 'out' parameters (#14521) 4 lat temu
enum 9474a818af fix enumtostr crash for enum-range (#13035) 5 lat temu
errmsgs a6cbe58e8c typetraits.$: $((int, float), int)` is now `"((int, float), int)"` instead of `"(tuple of (int, float), int)" (#14812) 4 lat temu
exception b49ac11a77 fix #10343 (#14789) 4 lat temu
exprs ff1c0bae4c update tests that tested for the 'discard' error messages 4 lat temu
fields 795044ed2b make tests green again 5 lat temu
flags 1105d03644 require errormsg to be specified before file. 6 lat temu
float 7d6cbf290a Error -> Defect for defects (#13908) 4 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 e7f280bd26 Remove deprecated stuff from stdlib (#14699) 4 lat temu
generics 0327159344 Add test-cases to some fixed issues to close them (#14795) 4 lat temu
gensym 488f3ed085 fixes yet another gensym regression (#12145) 5 lat temu
global 1105d03644 require errormsg to be specified before file. 6 lat temu
ic c8cffaf420 Incremental compilation (IC): Improvements (#11881) 5 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 da29222f86 init checks and 'out' parameters (#14521) 4 lat temu
iter 37692baf49 fix #13739 (#13742) 4 lat temu
js 61f2f1f5c5 fix #14576 addr of param (including for lent) now works with nim js (#14577) 4 lat temu
lent 7ccc7d7e93 fixes #14498 [backport:1.2] (#14503) 4 lat temu
let 9acbf99efb Allow let to not have value when using importc (#14258) 4 lat temu
lexer 34815a4697 megatest: make it green on Linux 6 lat temu
lookups 66c50c2ffc implement the 'bind' statement for generics, it was an oversight that this was never implemented (#14584) 4 lat temu
macros 9c42ae91b7 add legacy workaround; improve test so that it actually tests for the bugfix 4 lat temu
magics 51578be296 close #12746; minor cleanup (#14379) 4 lat temu
manyloc 695154970d deprecate existsDir; use dirExists instead (#14884) 4 lat temu
metatype a6cbe58e8c typetraits.$: $((int, float), int)` is now `"((int, float), int)"` instead of `"(tuple of (int, float), int)" (#14812) 4 lat temu
method 7d6cbf290a Error -> Defect for defects (#13908) 4 lat temu
misc dc5a40f3f3 {.deprecated: [existsFile: fileExists].} (#14735) 4 lat temu
modules 0a9a639230 Add testcase for #4796 (#14784) 4 lat temu
namedparams 6c487a6309 fixes #12196 5 lat temu
newconfig 695154970d deprecate existsDir; use dirExists instead (#14884) 4 lat temu
nimble acadda8da2 tnimblepathdollarfail.nim -> tests/nimble/tnimblepathdollar_fault to reduce false positives when searching for `fail` in CI logs (#14450) 4 lat temu
nimdoc 511bd947d3 fix bug in semgnrc: runnableExamples should not semcheck, even with > 1 arg (#14768) 4 lat temu
niminaction e7f280bd26 Remove deprecated stuff from stdlib (#14699) 4 lat temu
notnil eca8f1d79f Add tests for #8481, #6490 and #4061 (#14083) 4 lat temu
objects 7d6cbf290a Error -> Defect for defects (#13908) 4 lat temu
objvariant 3c38edf563 Better case coverage error message for alias and range enum (#12913) 5 lat temu
openarray 1551fff853 clean up deprecated stuff and unused imports in tests (#13059) 5 lat temu
osproc 90808877c5 testament: generic N-fold batching: windows CI 37mn=>16m (#14823) 4 lat temu
overflw 7d6cbf290a Error -> Defect for defects (#13908) 4 lat temu
overload f50377986a exp. features now in correct manual, closes #11932 (#14195) 4 lat temu
package_level_objects c17f6c7837 new feature: package level objects 7 lat temu
parallel 7828199827 #12103 - CI for OpenBSD (#12105) 4 lat temu
parser de27910ab7 make `from` an operator (#14241) 4 lat temu
pragmas a008f591e2 add test for `define`, `undef` (#14443) 4 lat temu
proc e8f4586c68 allow typed/untyped in magic procs (#12911) 5 lat temu
procvar 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) 6 lat temu
range 7d6cbf290a Error -> Defect for defects (#13908) 4 lat temu
rational 7d6cbf290a Error -> Defect for defects (#13908) 4 lat temu
realtimeGC b26378a468 WIP, most tests are now skipped 6 lat temu
sets 42dad3a836 tables/sharedtables/intsets/etc: fix #13496, #13504, #13505; add lots of tests (#13498) [backport] 4 lat temu
showoff e4415422fe Revert "printing float values will have one more digit. (#13276) [backport]" (#13363) 4 lat temu
specialops 547961f71e dotops: add a simple object delegation test 7 lat temu
statictypes 32f335f594 fix #14802 (#14803) 4 lat temu
stdlib dc5a40f3f3 {.deprecated: [existsFile: fileExists].} (#14735) 4 lat temu
system 5d5df4a394 Clean out Deprecated proc (#14797) 4 lat temu
template a6cbe58e8c typetraits.$: $((int, float), int)` is now `"((int, float), int)"` instead of `"(tuple of (int, float), int)" (#14812) 4 lat temu
testament a9eee6db65 misc testament cleanups (#14764) 4 lat temu
testdata abe5cb82a0 Fix for #5134 (parseJson(string) should fail on leftover data) (#5203) 8 lat temu
threads 8088633250 faster CIs (#13803) 4 lat temu
tools 3f29911a94 new feature: --staticBoundChecks:on to enforce static array index checking (#10965) 4 lat temu
trmacros 825e08b046 fixes #7524 6 lat temu
tuples 76ffa4fa25 fixes #14112, tests for #12892, #12671, #11697 (#14125) 4 lat temu
typerel 4c08e64e98 disallow typedesc in arrays & move existing checks to `types.typeAllowedAux` (#13261) 4 lat temu
types d839eb9352 fix #14007 (#14012) [backport] 4 lat temu
untestable 8e54bc5b0c Deprecate and/or remove ospaths (#14767) 4 lat temu
usingstmt 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
valgrind 223e65e529 attempt to add valgrind support to the CIs and testament (#12646) 5 lat temu
varres 814f150184 fix #13848: make var result work with nim cpp (#13959) 4 lat temu
varstmt 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
vm e7f280bd26 Remove deprecated stuff from stdlib (#14699) 4 lat temu
ast_pattern_matching.nim 389b140029 add tastspec (and ast_pattern_matching) (#10863) 5 lat temu
config.nims 1648f1dd99 fix #14320 (tasyncawait.nim is recently very flaky) + avoid hardcoding service ports everywhere + flakyAssert (#14327) 4 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
m14634.nim d149823019 fix #13166 tioselectors flaky test on freebsd+OSX (#14634) 4 lat temu
mmaptest.nim 39290cf88c Fix spellings (#12277) [backport] 5 lat temu
readme.md 54a52e7d08 Update link to parseSpec proc 4 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 695154970d deprecate existsDir; use dirExists instead (#14884) 4 lat temu

readme.md

This directory contains the test cases.

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

Note: Testament is only aware of tests under a directory (eg tests/foo/) and will ignore top-level tests like tests/tbar.nim.

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: run

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 pcat <category> (or cat to avoid parallel testing, which is slower).

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.