Timothee Cour 82996aee3f misc fixes: remove `forceConst` (obsolete by static), add more runnableExamples to system (#17896) 3 years ago
..
actiontable 7f18d7cbc1 Merge tests into a larger file (part 1 of ∞) (#9318) 6 years ago
alias 000b8afd26 Remove expr/stmt (#5857) 7 years ago
align 7e1ae35195 testament: error instead of silently ignore invalid targets; remove pointless alias target vs targets; document matrix; DRY (#16343) 4 years ago
ambsym 1105d03644 require errormsg to be specified before file. 6 years ago
arc b03d6c9b2f Fix #17712 (#17873) 3 years ago
arithm 339ebe958d JS: fix div uint64 no truncation (#16899) 3 years ago
array 363467fc00 Fix array's high & low return type for empty arrays (#17705) 3 years ago
assert d4f7f1d8f3 Improve documentation for assertions (#16988) 3 years ago
assign d447c0fe3f use typeof instead type (#16962) 3 years ago
astoverload 20b5f31c03 new tester; all tests categorized 11 years ago
astspec 159c06e045 unify tuple expressions (#13793) 3 years ago
async b667e288e2 move travis, appveyor, ci.yml.disabled to `unmaintained/` (#17828) 3 years ago
avr 939df8cbda ensure the avr example keeps compiling (#17663) 3 years ago
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 years ago
bind e40ff24c23 typeToString: type float => typedesc[float] (#17011) 3 years ago
borrow 4cb41f53f0 Add testcase for #14440 (#14771) 4 years ago
casestmt a65189a739 nnkArglist => nnkArgList + special case stylecheck:error (#17529) 3 years ago
ccgbugs 198b5e3a7a improve tsets.nim, twrong_setconstr.nim and avoid name clashes with compiler sets (#17876) 3 years ago
ccgbugs2 7e1ae35195 testament: error instead of silently ignore invalid targets; remove pointless alias target vs targets; document matrix; DRY (#16343) 4 years ago
clearmsg 1105d03644 require errormsg to be specified before file. 6 years ago
closure d447c0fe3f use typeof instead type (#16962) 3 years ago
cnstseq 1105d03644 require errormsg to be specified before file. 6 years ago
collections ad67bcf379 fix https://github.com/nim-lang/RFCs/issues/311 remove unary slice (#16714) 3 years ago
compilepragma 7e9cda7dba fixes #10299 (#11324) 5 years ago
compiler fe9a37f2a5 close #12684 add testcase (#17599) 3 years ago
compilerapi 73a8b950cb big steps torwards an efficient, simple IC implementation (#16543) 4 years ago
compilerfeatures 70a30317f7 fix #16693: testament spec nimout too lax (#16698) 3 years ago
compiles 2acf74d458 delete list comprehension (#12392) 5 years ago
concat 20b5f31c03 new tester; all tests categorized 11 years ago
concepts 7bfb9f0002 close #17636 (#17643) 3 years ago
constr 72b89eff82 semLambda removed, semProcAux reworked (#17379) 3 years ago
constraints 1105d03644 require errormsg to be specified before file. 6 years ago
constructors be95f8fdfa Turn some of the errors back into warnings 4 years ago
controlflow 299ddda5f6 Make unreachable code a warning instead of an error (#14816) 4 years ago
converter 72b89eff82 semLambda removed, semProcAux reworked (#17379) 3 years ago
coroutines dfe6797023 fix #15628 (#16387) 4 years ago
cpp 6c5872c169 `--nilseqs` is now a deprecated noop (#17211) 3 years ago
defaultprocparam 7c359a062c Add testcase for #12252 (#15676) 4 years ago
deprecated 40b58a0a18 fix #11009 (#14935) 4 years ago
destructor 68e522ecec Remove confusing <//> (#17830) 3 years ago
dir with space fa058773db fixes #10042 (allow spaces in import) (#10504) 6 years ago
discard 7f1d2489ad improve the 'has to be discarded' error message 4 years ago
distinct 8ee0eda841 fix #12282 distinct now does not create erroneous copy in VM (#17594) 3 years ago
distros e63fc95bd4 fix tdistros test which was failing on Nightlies 4 years ago
dll 6c1c8f51b3 IC: green tests (#17311) 3 years ago
effects 7bfb9f0002 close #17636 (#17643) 3 years ago
enum 840e13deb7 type with same name in different scope now works (#17710) 3 years ago
errmsgs 93c26041a5 fix #17859; rename tests so they run in CI; merge several tests with nim check (#17862) 3 years ago
exception 23d23ecb08 Make 'echo' raise IOErrors when appropriate (#16367) 4 years ago
exprs 70a30317f7 fix #16693: testament spec nimout too lax (#16698) 3 years ago
fields 6d442a40a6 use doAssert in tests (#16486) 4 years ago
flags 7e1ae35195 testament: error instead of silently ignore invalid targets; remove pointless alias target vs targets; document matrix; DRY (#16343) 4 years ago
float 357729639f fix #16469 vm float constants: do not conflate -0.0 and 0.0 (#16470) 4 years ago
fragmentation 381498b0db tests: disable flaky tests for now; closes #9421 6 years ago
friends e80465dacf tests: Trim .nim files trailing whitespace 9 years ago
gc 7ad49950bd [os:standalone]fix #14011 (#17564) 3 years ago
generics 72b89eff82 semLambda removed, semProcAux reworked (#17379) 3 years ago
gensym 488f3ed085 fixes yet another gensym regression (#12145) 5 years ago
global 1105d03644 require errormsg to be specified before file. 6 years ago
ic 7b6ab5109f IC exposes typedesc implementation shenanigans (#17759) 3 years ago
implicit a5ecbf823f lots of small changes 6 years ago
import_in_config 154db46db8 fixes a regression that caused --import in a config file to break things 8 years ago
importalls 0a10af5a2c privateAccess now works with ref | ptr (#17760) 3 years ago
init 7bfb9f0002 close #17636 (#17643) 3 years ago
isolate 71dd5f85b9 'isolate' builtin; refs https://github.com/nim-lang/RFCs/issues/244 (#15011) 4 years ago
iter 13a2030014 follow up #17486 (#17492) 3 years ago
js a66637bda4 followup #16871 asyncjs.then: allow pipelining procs returning futures (#17189) 3 years ago
lent e406e28738 fix #16898 #17621 (#17628) 3 years ago
let 9acbf99efb Allow let to not have value when using importc (#14258) 4 years ago
lexer 159c06e045 unify tuple expressions (#13793) 3 years ago
lookups b809562c7c make megatest consistent with unjoined tests wrt newlines, honor newlines in output spec (#16151) 4 years ago
macros 17db15f9b1 fix #17836 (typed macro isNil for proc params) (#17841) 3 years ago
magics b809562c7c make megatest consistent with unjoined tests wrt newlines, honor newlines in output spec (#16151) 4 years ago
manyloc 0e3ea16554 use lowercase --define switches (#17283) 3 years ago
metatype e40ff24c23 typeToString: type float => typedesc[float] (#17011) 3 years ago
method 58b9191354 fix #16516 method dispatch for sink args (#16594) 4 years ago
misc 87229e272e fix #17853 (ascii message separator broke json nim dump) (#17887) 3 years ago
modules 979148e863 refactorings to prepare the compiler for IC (#15935) 4 years ago
namedparams 6c487a6309 fixes #12196 5 years ago
navigator 3b80f0dc8e IC navigator: added support for include files (#17784) 3 years ago
newconfig 924ab3adea fix #17190 `nimscript` now accepts arbitrary file extensions for `nim e main.customext` (#17596) 3 years ago
nimble 31a8cf16bb testament spec: remove errmsg alias of errormsg (#16188) 4 years ago
nimdoc a807233aeb fix #17615(runnableExamples silently ignored if placed after some code) (#17619) 3 years ago
niminaction 0e3ea16554 use lowercase --define switches (#17283) 3 years ago
notnil c86fdfa1ee add testcase for #9466 (#17538) 3 years ago
objects c6dc9c0255 fixes #17437 - crash where error reporting > 1 (#17547) 3 years ago
objvariant 7bfb9f0002 close #17636 (#17643) 3 years ago
openarray 83fa0fc843 fix #12521(type alias for openArray) (#17593) 3 years ago
osproc 87229e272e fix #17853 (ascii message separator broke json nim dump) (#17887) 3 years ago
overflw c07807bedf Fix #15706 (#15846) 4 years ago
overload b809562c7c make megatest consistent with unjoined tests wrt newlines, honor newlines in output spec (#16151) 4 years ago
package_level_objects c17f6c7837 new feature: package level objects 7 years ago
parallel 6e8f0f8cfc add colon (#17834) 3 years ago
parser 76f93877cd Small parser loop fix (#17904) 3 years ago
pragmas 7c64e49d45 getCustomPragmaVal priority/override fixes (#17725) 3 years ago
proc b1b767ed0d close #17157 add testcase (#17531) 3 years ago
procvar 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368) 6 years ago
range 8e124da75d fix range to unsigned conversion (#17754) 3 years ago
rational 7d6cbf290a Error -> Defect for defects (#13908) 4 years ago
realtimeGC 5c23ba7545 fixed article duplication typos (#16216) 4 years ago
sandwich 2f213db7ee fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 3 years ago
sets 198b5e3a7a improve tsets.nim, twrong_setconstr.nim and avoid name clashes with compiler sets (#17876) 3 years ago
showoff 9465b5db44 Clean up macros (#14959) 4 years ago
specialops aac8f67573 tests and docs for call operator (#16980) 3 years ago
statictypes 6d7d1e60fe fix #14585, fix #17589: access to static param now works (#17590) 3 years ago
stdlib abb8a73134 Fix nim-lang/nimforum#285 - punctuation after URL (#17908) 3 years ago
stmt 0869d2a477 fix #15972 (#15994) 4 years ago
strictnotnil 672dc5cd87 Nil type check implementation (#15287) 4 years ago
system b667e288e2 move travis, appveyor, ci.yml.disabled to `unmaintained/` (#17828) 3 years ago
template 6f53579a8c close #9534 add testcase (#17607) 3 years ago
testament a236002e54 testament: add `nimoutFull: bool` spec (#17867) 3 years ago
testdata abe5cb82a0 Fix for #5134 (parseJson(string) should fail on leftover data) (#5203) 8 years ago
threads d1e093207a fix #17267 (#17273) 3 years ago
tools 61c1e35181 close #14806 (#17626) 3 years ago
trmacros f2b041f168 Reenable a few tests 4 years ago
tuples 9c52009de6 close #7012 add testcase (#17537) 3 years ago
typerel 2abc936d51 `typeof(voidStmt)` now works (#17807) 3 years ago
types ceadf54d76 iterable[T] (#17196) 3 years ago
untestable 5261579175 [nim-gdb] Fixed enums and flag output [ci skip] (#17634) 3 years ago
usingstmt 9465b5db44 Clean up macros (#14959) 4 years ago
valgrind 55a33e1664 testament: support disabled:osx as alias to disabled:macosx (#17124) 3 years ago
varres 7bfb9f0002 close #17636 (#17643) 3 years ago
varstmt 3b783f7e13 Testament: refactoring; makes the test joiner green 6 years ago
views 7bfb9f0002 close #17636 (#17643) 3 years ago
vm 82996aee3f misc fixes: remove `forceConst` (obsolete by static), add more runnableExamples to system (#17896) 3 years ago
whenstmt 2aba116bbc when statements branches exit early (#17143) 3 years ago
ast_pattern_matching.nim 159c06e045 unify tuple expressions (#13793) 3 years ago
config.nims a236002e54 testament: add `nimoutFull: bool` spec (#17867) 3 years ago
dummy.txt a68a4bfaf2 Remove install.txt and readme.txt (#9521) 6 years ago
js.html 72a3e21f28 Removes executable bit for text files. 11 years ago
js.nim e80465dacf tests: Trim .nim files trailing whitespace 9 years ago
m14634.nim 6d442a40a6 use doAssert in tests (#16486) 4 years ago
mmaptest.nim 39290cf88c Fix spellings (#12277) [backport] 5 years ago
readme.md 54a52e7d08 Update link to parseSpec proc 4 years ago
rectest.nim e80465dacf tests: Trim .nim files trailing whitespace 9 years ago
stckovfl.nim e80465dacf tests: Trim .nim files trailing whitespace 9 years ago
test_nimscript.nims fad8439b8d Make parseopt available on all backends (#17009) 3 years ago

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.