Nikolay Nikolov efd5ed7328 backport to version 1.6: Also show the `raises` pragma when converting proc types to string (#23026) (#23029) 1 rok temu
..
actiontable 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) 6 lat temu
alias c5d62bcbfe fix #19349 incompatible type when mixing float32 and cfloat in generics (#20551) 2 lat temu
align bd4609f20e fixes #22419; async/closure environment does not align local variables (#22425) 1 rok temu
ambsym 1105d03644 require errormsg to be specified before file. 6 lat temu
arc 876f6d69a8 fixes #21974; fixes sameConstant fieldDefect (#21981) 1 rok temu
arithm 339ebe958d JS: fix div uint64 no truncation (#16899) 4 lat temu
array f222625b17 fix #20248;fix #6215;turns into simple CT error (#21141) 1 rok temu
assert d4f7f1d8f3 Improve documentation for assertions (#16988) 4 lat temu
assign c2d098b974 .inheritable fix for 1.6 (#21768) 2 lat temu
astoverload 20b5f31c03 new tester; all tests categorized 11 lat temu
astspec 5b26f2bd81 fix deprecated example (#18721) 3 lat temu
async 3c9b68dc15 fixes CI; disable SSL tests on osx for now (#22304) 1 rok temu
avr 939df8cbda ensure the avr example keeps compiling (#17663) 4 lat temu
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) 4 lat temu
bind e40ff24c23 typeToString: type float => typedesc[float] (#17011) 4 lat temu
borrow b21f81dade Fixed distinct composite type class proc borrowing (#18904) 2 lat temu
casestmt 17e61c75a2 fixes #20031; uint64 is an ordinal type since 1.0 (#20094) 2 lat temu
ccgbugs 9d573f4a1d fixes #16331; aliasing of tuple construction within a single assignme… (#22113) 1 rok temu
ccgbugs2 196e93f9e1 [add testcase] NRVO does not occur with init procedures (#19462) 2 lat temu
clearmsg 1105d03644 require errormsg to be specified before file. 6 lat temu
closure ba2d8ba468 fixes #22297; return in the finally in the closure iterators (#22300) 1 rok temu
cnstseq 1105d03644 require errormsg to be specified before file. 6 lat temu
collections 4fc535fbd6 fixes #17197; fixes #22560; fixes the dest of newSeqOfCap in refc (#22594) 1 rok temu
compilepragma 7e9cda7dba fixes #10299 (#11324) 6 lat temu
compiler 892b1f7583 Fix #16937; --clib option pass library name to backend C compiler correctly (#19754) 2 lat temu
compilerapi efa3479e4e reset macrocache after each script evaluation (#22195) 1 rok temu
compilerfeatures 70a30317f7 fix #16693: testament spec nimout too lax (#16698) 4 lat temu
compiles 1368316b7f style usages part one (openarray => openArray) (#19321) 2 lat temu
concat 20b5f31c03 new tester; all tests categorized 11 lat temu
concepts 0683e8f747 fix bugs with dot & call operators [backport] (#20931) 2 lat temu
constr ec674e6d5b fix #18990 Regression in proc symbol resolution; Error: attempting to… (#20554) 2 lat temu
constraints 1105d03644 require errormsg to be specified before file. 6 lat temu
constructors be95f8fdfa Turn some of the errors back into warnings 5 lat temu
controlflow ce8d9dd1cb Fix #22604: Make endsInNoReturn traverse the tree (#22612) 1 rok temu
converter 5bb626d4b1 Fixed generic distinct conversions for 'var' (#18837) 2 lat temu
coroutines dfe6797023 fix #15628 (#16387) 4 lat temu
cpp 1368316b7f style usages part one (openarray => openArray) (#19321) 2 lat temu
defaultprocparam 7c359a062c Add testcase for #12252 (#15676) 4 lat temu
deprecated b8f761b7e2 even lighter version of #17938: fix most issues with UnusedImport, XDeclaredButNotUsed, etc; fix #17511, #17510, #14246 (without realModule) (#18362) 3 lat temu
destructor 1368316b7f style usages part one (openarray => openArray) (#19321) 2 lat temu
dir with space fa058773db fixes #10042 (allow spaces in import) (#10504) 6 lat temu
discard 025ada1809 fixes #21360; discarding empty seqs/arrays now raises errors (#21374) 2 lat temu
distinct 04d0716f37 fix #9423 followup #17594: distinct generics now work in VM (#21816) 1 rok temu
distros e63fc95bd4 fix tdistros test which was failing on Nightlies 5 lat temu
dll 779b4e307b don't use `{.rtl.}` for generics, otherwise `-d:useNimRtl` gives `ambiguous identifier` nimrtl error (#18406) 3 lat temu
effects efd5ed7328 backport to version 1.6: Also show the `raises` pragma when converting proc types to string (#23026) (#23029) 1 rok temu
enum c377a5b8a1 fixes #21863; Incorrect enum field access can cause internal error (#21886) 1 rok temu
errmsgs 070ecb036c fixes #22049; fixes #22054; implicit conversion keeps varness (#22097) 1 rok temu
exception c9df6cfd92 Remove side-effects from sysFatal with panics on (#20632) 2 lat temu
exprs 246267aa52 Exclude block from endsInNoReturn, fix regression (#22632) 1 rok temu
fields 6d442a40a6 use doAssert in tests (#16486) 4 lat temu
float 2410580d59 fixes #21847; let `parseFloat` behave like `strtod` (#21854) 1 rok 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 92cb765714 Raise IndexDefect when deleting element at out of bounds index (#17821) 3 lat temu
generics 5ad4b72ac7 Fix #17509: Continue instead of return with unfinished generics (#22563) 1 rok temu
gensym 488f3ed085 fixes yet another gensym regression (#12145) 5 lat temu
global 7e80df2267 fix #3505 wrong var {.global.} initialization, asign variable to it (#20812) 2 lat temu
ic 7b6ab5109f IC exposes typedesc implementation shenanigans (#17759) 4 lat temu
implicit a5ecbf823f lots of small changes 6 lat temu
import 01ef1e1500 fixes #22208; Ambiguous error when import modules with same names but… (#22211) 1 rok temu
import_in_config 154db46db8 fixes a regression that caused --import in a config file to break things 8 lat temu
importalls 78e2d299df typo: nonexistant => nonexistent (#17918) 4 lat temu
init 7bfb9f0002 close #17636 (#17643) 4 lat temu
isolate f85e09633d fixes #19013 [backport:1.6] (#19111) 3 lat temu
iter 69faab3cf6 fix #22548;environment misses for type reference in iterator access n… (#22559) 1 rok temu
js 6863b5d289 `strutils.split/rsplit` now return src on an empty sep (#22136) 1 rok temu
lent d80397c7d7 fixes #22138 (#22221) 1 rok temu
let 9acbf99efb Allow let to not have value when using importc (#14258) 5 lat temu
lexer b686912622 fix dot calls with resolved symbols in templates (#22076) 1 rok temu
lookups 8f102f9e62 retain forced open undeclared ident information (#22019) 1 rok temu
macros c2d098b974 .inheritable fix for 1.6 (#21768) 2 lat temu
magics 0cdbf5e04e Add `nkFastAsgn` into `semExpr` (#20939) 2 lat temu
manyloc 1368316b7f style usages part one (openarray => openArray) (#19321) 2 lat temu
metatype babc9b234d Made generic type classes work with types using static parameters (#21528) 2 lat temu
method c2d098b974 .inheritable fix for 1.6 (#21768) 2 lat temu
misc 3c9b68dc15 fixes CI; disable SSL tests on osx for now (#22304) 1 rok temu
modules ae31ed4665 import brackets support `as` and prefixes [backport] (#21636) 2 lat temu
namedparams 6c487a6309 fixes #12196 5 lat temu
navigator 3b80f0dc8e IC navigator: added support for include files (#17784) 4 lat temu
newconfig fd2da6da54 fix #8219; nim check/dump shouldn't run single nimscript project [backport: 1.6] (#19641) 3 lat temu
nimble 31a8cf16bb testament spec: remove errmsg alias of errormsg (#16188) 4 lat temu
nimdoc f01ffbf6f1 fix #19580; add warning for bare except: clause (#21099) 2 lat temu
niminaction 0e3ea16554 use lowercase --define switches (#17283) 4 lat temu
notnil c86fdfa1ee add testcase for #9466 (#17538) 4 lat temu
objects 60dc41a5e4 When in object handles procedure call again, fixes #22474 (#22480) 1 rok temu
objvariant cddf8ec6f6 implements https://github.com/nim-lang/RFCs/issues/407 (#18793) 3 lat temu
openarray 46543d8e9b enable static tests for topenarray (#20620) 2 lat temu
osproc 06232b7f2e fixes #18058 (#18162) 3 lat temu
overflw c07807bedf Fix #15706 (#15846) 4 lat temu
overload 5e4648232b make `var object` match better than `object` (#22152) 1 rok temu
package fd76c00479 Refactor and doc package handling, module name mangling (#19821) 2 lat temu
package_level_objects c17f6c7837 new feature: package level objects 7 lat temu
parallel 57e307f3a8 fixes #20958; fixes the return type of slice function [backport] (#20959) 2 lat temu
parser 410254b485 fix issue #20922 by handling missing expr in `exprList` for `tkOf` (#20930) 2 lat temu
pragmas 547f205794 error on user pragma args (#21776) 1 rok temu
proc 4ea0ce9149 fix #15836 proc arg return type auto unexpectly match proc with concr… (#21065) 2 lat temu
procvar 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) 6 lat temu
range 3b1aabdcff change `--hint[X] => --hint:X` in nim repo (avoids shell quoting issues) (#18085) 3 lat temu
rational 7d6cbf290a Error -> Defect for defects (#13908) 5 lat temu
realtimeGC 1e0165186b testament: remove deadcode related to realtimeGC, testC, callCCompiler (#18087) 3 lat temu
sandwich 2f213db7ee fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 4 lat temu
sets 2f6dc73342 Add test for issue 15435 (#19079) 2 lat temu
showoff 1368316b7f style usages part one (openarray => openArray) (#19321) 2 lat temu
slice ee876aee28 allow `HSlice` bounded by constants of distinct types (#19219) [backport:1.2] 3 lat temu
specialops 76c347515a remove unneeded import in the test 2 lat temu
statictypes f55f3d6ffd Fix #5780 (#22428) 1 rok temu
stdlib 9cbd8695e7 remove unnecessary side-effects from base64.encode(mime) (#22986) 1 rok temu
stmt 0869d2a477 fix #15972 (#15994) 4 lat temu
strictnotnil 672dc5cd87 Nil type check implementation (#15287) 4 lat temu
stylecheck 6c5d4946e4 Fix some `styleCheck` bugs (#20095) 1 rok temu
system 09f7be13b6 fixes #22262; fixes `-d:useMalloc` broken with `--mm:none` and `--threads on` (#22355) 1 rok temu
template f16e4dd22a correct logic for qualified symbol in templates (#22577) 1 rok temu
testament 4e0f38fbb1 testament :show duration also for failed tests; improve `tshould_not_work`; mitigate #17946 tchannels timeouts (#17947) 4 lat temu
testdata 168fcc6965 Add new self-signed 4096 bit certificate to testdata (#19758) 2 lat temu
threads f048dad7c3 add testcase for #6499 #12229 #7172 (#18547) 3 lat temu
tools 3b1aabdcff change `--hint[X] => --hint:X` in nim repo (avoids shell quoting issues) (#18085) 3 lat temu
trmacros f2b041f168 Reenable a few tests 4 lat temu
tuples 070ecb036c fixes #22049; fixes #22054; implicit conversion keeps varness (#22097) 1 rok temu
typerel c2d098b974 .inheritable fix for 1.6 (#21768) 2 lat temu
types c4380107d6 Fixed generic parameters failing to be used in inheritance (#21866) 1 rok temu
untestable 5def1fc8f6 temporarily disable badssl tests (#21710) 2 lat temu
usingstmt 9465b5db44 Clean up macros (#14959) 4 lat temu
valgrind 55a33e1664 testament: support disabled:osx as alias to disabled:macosx (#17124) 4 lat temu
varres 7bfb9f0002 close #17636 (#17643) 4 lat temu
varstmt 3b783f7e13 Testament: refactoring; makes the test joiner green 6 lat temu
views a058dcaf5f fixes #21674; `lent` can be used in the fields or the cast type as a parameter (#21684) 1 rok temu
vm d37901fe06 fix getNullValue for cstring in VM, make other VM code aware of nil cstring (#22527) 1 rok temu
whenstmt 6274bc35dd fix #19426 compile error using when/elif/else and typedesc in template (#20550) 2 lat temu
ast_pattern_matching.nim c2d098b974 .inheritable fix for 1.6 (#21768) 2 lat temu
config.nims 56a15976b5 fixes #19713; Revert "Remove tlsEmulation enabled from Windows + GCC config" (#19119) (#20327) 2 lat temu
dummy.txt a68a4bfaf2 Remove install.txt and readme.txt (#9521) 6 lat temu
js.html 72a3e21f28 Removes executable bit for text files. 12 lat temu
js.nim e80465dacf tests: Trim .nim files trailing whitespace 9 lat temu
m14634.nim 6d442a40a6 use doAssert in tests (#16486) 4 lat temu
mmaptest.nim b9363c8bb4 Enable customizing PageShift to set PageSize for embedded targets (#19129) 3 lat temu
readme.md 1e0165186b testament: remove deadcode related to realtimeGC, testC, callCCompiler (#18087) 3 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 f061971a9b envPairs works in vm, nims (#18615) 3 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.