ringabout 3eddba8b5e stdlib final cleanup hai 1 ano
..
actiontable 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) %!s(int64=6) %!d(string=hai) anos
alias 84fab7f39b fix #19349 incompatible type when mixing float32 and cfloat in generics (#20551) hai 1 ano
align 7e1ae35195 testament: error instead of silently ignore invalid targets; remove pointless alias target vs targets; document matrix; DRY (#16343) %!s(int64=3) %!d(string=hai) anos
ambsym 2449c37137 better procvar ambiguity errors, clean up after #20457 (#20932) hai 1 ano
arc e03a178bff rename `std/threads` to `std/typedthreads` (#20850) hai 1 ano
arithm 339ebe958d JS: fix div uint64 no truncation (#16899) %!s(int64=3) %!d(string=hai) anos
array 9df195ef58 style usages part one (openarray => openArray) (#19321) %!s(int64=2) %!d(string=hai) anos
assert 12a20b9fb6 revert #20719; relieve `std/assertions` of the `sysFatal` dep (#20743) hai 1 ano
assign 7739e23420 defaults to ORC (#19972) %!s(int64=2) %!d(string=hai) anos
astoverload 20b5f31c03 new tester; all tests categorized %!s(int64=10) %!d(string=hai) anos
astspec 5b26f2bd81 fix deprecated example (#18721) %!s(int64=3) %!d(string=hai) anos
async 06cd15663d fixes ptr to cstring warnings[backport] (#20848) hai 1 ano
avr 430a179307 default threads on (#19368) %!s(int64=2) %!d(string=hai) anos
benchmarks e112974920 fix #16752: threadvar now works with importcpp types; osx now uses native TLS (`--tlsEmulation:off`), which can be orders of magnitude faster (#16750) %!s(int64=3) %!d(string=hai) anos
bind 5602183234 'lock levels' are deprecated, now a noop (#20539) hai 1 ano
borrow 98b2838a30 borrowed procs can have a body now for documentation generation (#20617) hai 1 ano
casestmt 8cfce70738 fix #18964 Small string case with else statement first in AST evaluat… (#20862) hai 1 ano
ccgbugs 0b1650576c move widestrs out of system (#20462) %!s(int64=2) %!d(string=hai) anos
ccgbugs2 33cd883e27 [add testcase] NRVO does not occur with init procedures (#19462) %!s(int64=2) %!d(string=hai) anos
clearmsg 1105d03644 require errormsg to be specified before file. %!s(int64=5) %!d(string=hai) anos
closure 66cbcaab84 fix #20152 Illegal capture of closure iterator, when should be legal (#20607) hai 1 ano
cnstseq 1105d03644 require errormsg to be specified before file. %!s(int64=5) %!d(string=hai) anos
collections 723a71bd22 follow up #20109; remove `shallow` seqs/strings for ORC (#20502) hai 1 ano
compilepragma 7e9cda7dba fixes #10299 (#11324) %!s(int64=5) %!d(string=hai) anos
compiler e323b91a32 correct grammar (ref #20199) and add check for grammar.txt (#20494) hai 1 ano
compilerapi 73a8b950cb big steps torwards an efficient, simple IC implementation (#16543) %!s(int64=3) %!d(string=hai) anos
compilerfeatures 70a30317f7 fix #16693: testament spec nimout too lax (#16698) %!s(int64=3) %!d(string=hai) anos
compiles d102b2f54c deprecate unsafeAddr; extend addr (#19373) %!s(int64=2) %!d(string=hai) anos
concat 20b5f31c03 new tester; all tests categorized %!s(int64=10) %!d(string=hai) anos
concepts 555c5ed1a7 fix bugs with dot & call operators [backport] (#20931) hai 1 ano
constr ea2f2775a7 fix #18990 Regression in proc symbol resolution; Error: attempting to… (#20554) hai 1 ano
constraints 1105d03644 require errormsg to be specified before file. %!s(int64=5) %!d(string=hai) anos
constructors be95f8fdfa Turn some of the errors back into warnings %!s(int64=4) %!d(string=hai) anos
controlflow ef29987781 An unnamed break in a block now gives an `UnnamedBreak` warning (#20901) hai 1 ano
converter 723a71bd22 follow up #20109; remove `shallow` seqs/strings for ORC (#20502) hai 1 ano
coroutines dfe6797023 fix #15628 (#16387) %!s(int64=3) %!d(string=hai) anos
cpp 6d8178a93e closes #4678; add testcase (#20634) hai 1 ano
defaultprocparam 7c359a062c Add testcase for #12252 (#15676) %!s(int64=3) %!d(string=hai) anos
deprecated de4b0346bd store full definition AST for consts, fix noRewrite (#20115) %!s(int64=2) %!d(string=hai) anos
destructor cdbf5b4699 fixes a severe bug of testament (#20832) hai 1 ano
dir with space fa058773db fixes #10042 (allow spaces in import) (#10504) %!s(int64=5) %!d(string=hai) anos
discard d4afa53fd5 fixes #13583; enforce void for `nkWhileStmt` (#20947) hai 1 ano
distinct 1182216381 remove a special case in sigmatch; distinct pointer types no longer match `nil` type (#20251) %!s(int64=2) %!d(string=hai) anos
distros e63fc95bd4 fix tdistros test which was failing on Nightlies %!s(int64=4) %!d(string=hai) anos
dll 779b4e307b don't use `{.rtl.}` for generics, otherwise `-d:useNimRtl` gives `ambiguous identifier` nimrtl error (#18406) %!s(int64=3) %!d(string=hai) anos
effects 3eddba8b5e stdlib final cleanup hai 1 ano
enum 93b085a57a closes #12589; add testcase (#20769) hai 1 ano
errmsgs 12a20b9fb6 revert #20719; relieve `std/assertions` of the `sysFatal` dep (#20743) hai 1 ano
exception ef29987781 An unnamed break in a block now gives an `UnnamedBreak` warning (#20901) hai 1 ano
exprs 70a30317f7 fix #16693: testament spec nimout too lax (#16698) %!s(int64=3) %!d(string=hai) anos
fields 6d442a40a6 use doAssert in tests (#16486) %!s(int64=3) %!d(string=hai) anos
float 06cd15663d fixes ptr to cstring warnings[backport] (#20848) hai 1 ano
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 4c46358db1 remove shallowCopy for ARC/ORC (#20070) %!s(int64=2) %!d(string=hai) anos
generics aa6f9d490f fix #6637 array index type depends generic (#20673) hai 1 ano
gensym 7739e23420 defaults to ORC (#19972) %!s(int64=2) %!d(string=hai) anos
global 354eb2a86c fix #20866 [ORC] Bad codegen for global pointer to iterator (#20876) hai 1 ano
ic 7739e23420 defaults to ORC (#19972) %!s(int64=2) %!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
importalls 78e2d299df typo: nonexistant => nonexistent (#17918) %!s(int64=3) %!d(string=hai) anos
init 0d23419e68 DAA and 'out' parameters (#20506) hai 1 ano
isolate b7c66ce860 fixes #19013 [backport:1.6] (#19111) %!s(int64=2) %!d(string=hai) anos
iter ef29987781 An unnamed break in a block now gives an `UnnamedBreak` warning (#20901) hai 1 ano
js 17ac8c31bf move `smtp` to nimble packages (#20953) hai 1 ano
lent 5602183234 'lock levels' are deprecated, now a noop (#20539) hai 1 ano
let 9acbf99efb Allow let to not have value when using importc (#14258) %!s(int64=4) %!d(string=hai) anos
lexer 0b1d1b7886 fixes #15688; handle `strongSpace` overflow issues (#20724) hai 1 ano
lookups d1d141b135 new .redefine pragma for templates, warn on redefinition without it (#20211) %!s(int64=2) %!d(string=hai) anos
macros de4b0346bd store full definition AST for consts, fix noRewrite (#20115) %!s(int64=2) %!d(string=hai) anos
magics d26b1232ee Add `nkFastAsgn` into `semExpr` (#20939) hai 1 ano
manyloc 7739e23420 defaults to ORC (#19972) %!s(int64=2) %!d(string=hai) anos
metatype 7739e23420 defaults to ORC (#19972) %!s(int64=2) %!d(string=hai) anos
method 0bacdf5fdf fixes #20515; base `method` requires explicit `{.gcsafe.}` to be GC-safe (#20574) hai 1 ano
misc b57a9637e8 fixes #20914; fixes the alignment of big sets (#20918) hai 1 ano
modules 7739e23420 defaults to ORC (#19972) %!s(int64=2) %!d(string=hai) anos
namedparams 6c487a6309 fixes #12196 %!s(int64=5) %!d(string=hai) anos
navigator 3b80f0dc8e IC navigator: added support for include files (#17784) %!s(int64=3) %!d(string=hai) anos
newconfig 82319ef00d fix #8219; nim check/dump shouldn't run single nimscript project [backport: 1.6] (#19641) %!s(int64=2) %!d(string=hai) anos
nimble 31a8cf16bb testament spec: remove errmsg alias of errormsg (#16188) %!s(int64=3) %!d(string=hai) anos
nimdoc 0de3d4292f fix #16993, #18054, #17835 runnableExamples now works with templates and nested templates (#18082) %!s(int64=3) %!d(string=hai) anos
niminaction 3eddba8b5e stdlib final cleanup hai 1 ano
notnil c86fdfa1ee add testcase for #9466 (#17538) %!s(int64=3) %!d(string=hai) anos
objects 1707bc4a99 fixes #20856; store defaults directly (#20859) hai 1 ano
objvariant 9c17a32e0e fix #19266; allow reassign discriminant field (#19567) %!s(int64=2) %!d(string=hai) anos
openarray fa1606c6d6 enable static tests for topenarray (#20620) hai 1 ano
osproc 06232b7f2e fixes #18058 (#18162) %!s(int64=3) %!d(string=hai) anos
overflw c07807bedf Fix #15706 (#15846) %!s(int64=3) %!d(string=hai) anos
overload 48d41ab375 fixes #20645 (#20646) hai 1 ano
package d30c6419a0 Refactor and doc package handling, module name mangling (#19821) %!s(int64=2) %!d(string=hai) anos
package_level_objects c17f6c7837 new feature: package level objects %!s(int64=6) %!d(string=hai) anos
parallel 3d5edb41be fixes #20958; fixes the return type of slice function [backport] (#20959) hai 1 ano
parser 15d00ca0e1 allow proc expressions in place of statements (#20935) hai 1 ano
pragmas 5602183234 'lock levels' are deprecated, now a noop (#20539) hai 1 ano
proc 169d3fda00 fix #18136 tests/proc/t17157.nim now gives SIGSEGV instead of error (#20555) hai 1 ano
procvar 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) %!s(int64=6) %!d(string=hai) anos
range cbd9fee22a fix #19678 Broken behavior with string ranges in case labels (#20475) %!s(int64=2) %!d(string=hai) anos
rational 7d6cbf290a Error -> Defect for defects (#13908) %!s(int64=4) %!d(string=hai) anos
realtimeGC 1e0165186b testament: remove deadcode related to realtimeGC, testC, callCCompiler (#18087) %!s(int64=3) %!d(string=hai) anos
sandwich 2f213db7ee fixes #11225; generic sandwich problems; [backport:1.2] (#17255) %!s(int64=3) %!d(string=hai) anos
sets 5ebd1248df overloadable enums no longer experimental (#20298) %!s(int64=2) %!d(string=hai) anos
showoff 9df195ef58 style usages part one (openarray => openArray) (#19321) %!s(int64=2) %!d(string=hai) anos
slice 0213c7313b allow `HSlice` bounded by constants of distinct types (#19219) [backport:1.2] %!s(int64=2) %!d(string=hai) anos
specialops 555c5ed1a7 fix bugs with dot & call operators [backport] (#20931) hai 1 ano
statictypes a51ed90c5d fix #20148 implicit compile time conversion int to ranged float cause… (#20698) hai 1 ano
stdlib 3eddba8b5e stdlib final cleanup hai 1 ano
stmt 0869d2a477 fix #15972 (#15994) %!s(int64=3) %!d(string=hai) anos
strictnotnil 6289b002b6 [Testament] Extend and document message testing aids (#19996) %!s(int64=2) %!d(string=hai) anos
stylecheck 70c25c45d6 fixes #20397; fixes stylecheck regression (#20398) %!s(int64=2) %!d(string=hai) anos
system 06cd15663d fixes ptr to cstring warnings[backport] (#20848) hai 1 ano
template bae0fb720a fix #19149 Invalid codegen when returning var tuple from a template (#20762) hai 1 ano
testament 6289b002b6 [Testament] Extend and document message testing aids (#19996) %!s(int64=2) %!d(string=hai) anos
testdata 8c100a37b9 Add new self-signed 4096 bit certificate to testdata (#19758) %!s(int64=2) %!d(string=hai) anos
threads cdbf5b4699 fixes a severe bug of testament (#20832) hai 1 ano
tools 27a38a9fce fix #13790; ptr char (+friends) should not implicitly convert to cstring (#20761) hai 1 ano
trmacros de4b0346bd store full definition AST for consts, fix noRewrite (#20115) %!s(int64=2) %!d(string=hai) anos
tuples 841d9d5975 closes #16331; add testcase (#20730) hai 1 ano
typerel 3eddba8b5e stdlib final cleanup hai 1 ano
types 77e58bf573 fixes #20807, refs #20450, regression with seq inference (#20818) hai 1 ano
untestable 3eddba8b5e stdlib final cleanup hai 1 ano
usingstmt f6eb1d4d7d remove {.this.} pragma, deprecated since 0.19 (#20201) %!s(int64=2) %!d(string=hai) anos
valgrind 55a33e1664 testament: support disabled:osx as alias to disabled:macosx (#17124) %!s(int64=3) %!d(string=hai) anos
varres 7bfb9f0002 close #17636 (#17643) %!s(int64=3) %!d(string=hai) anos
varstmt 3b783f7e13 Testament: refactoring; makes the test joiner green %!s(int64=5) %!d(string=hai) anos
views da0a2fdca2 Unpack mSlice tupleconstr for static openarrays (#20615) hai 1 ano
vm 600b3a91ab fixes regression #20746; remove string copies for ORC booted compiler (#20776) hai 1 ano
whenstmt 04c48e3c5b fix #19426 compile error using when/elif/else and typedesc in template (#20550) hai 1 ano
ast_pattern_matching.nim 86f7f4ffa5 remove deprecated type pragma syntax, fix bugs that required it (#20199) %!s(int64=2) %!d(string=hai) anos
config.nims ef29987781 An unnamed break in a block now gives an `UnnamedBreak` warning (#20901) hai 1 ano
dummy.txt a68a4bfaf2 Remove install.txt and readme.txt (#9521) %!s(int64=5) %!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
m14634.nim 6d442a40a6 use doAssert in tests (#16486) %!s(int64=3) %!d(string=hai) anos
mmaptest.nim 92d6fb86c6 Enable customizing PageShift to set PageSize for embedded targets (#19129) %!s(int64=2) %!d(string=hai) anos
readme.md 37fe9c0f38 Add a link for testament (#20923) hai 1 ano
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 0b1650576c move widestrs out of system (#20462) %!s(int64=2) %!d(string=hai) anos

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.

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.