Nim/tests
2022-08-12 09:03:10 +08:00
..
actiontable
alias
align
ambsym
arc dec inLoop after exiting the while scope in computeLiveRanges [backport] (#19918) 2022-06-29 22:37:24 +08:00
arithm
array style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
assert
assign
astoverload
astspec fix deprecated example (#18721) 2021-08-21 08:22:00 +02:00
async Better error message and tests for bad await (#19622) 2022-04-13 23:03:46 +02:00
avr default threads on (#19368) 2022-07-06 13:06:41 +02:00
benchmarks
bind
borrow Fixed distinct composite type class proc borrowing (#18904) 2021-10-26 11:29:07 +02:00
casestmt fixes #20031; uint64 is an ordinal type since 1.0 (#20094) 2022-07-27 11:15:51 +02:00
ccgbugs Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
ccgbugs2 [add testcase] NRVO does not occur with init procedures (#19462) 2022-01-29 14:06:54 +01:00
clearmsg
closure closes #11042; add testcase (#19935) 2022-06-28 16:49:31 +08:00
cnstseq
collections rename nimEnableHashRef [backport] (#18941) 2021-10-04 21:28:13 +02:00
compilepragma
compiler fix #20012 (#20013) 2022-07-13 20:55:33 +08:00
compilerapi
compilerfeatures
compiles deprecate unsafeAddr; extend addr (#19373) 2022-01-16 11:08:38 +01:00
concat
concepts Fix fixAbstractType for user defined typeclasses, fixes #19730 & #18409 (#19732) 2022-04-30 15:58:58 +02:00
constr
constraints
constructors
controlflow
converter fix #18986; Import/except doesn't work on devel [backport: 1.6] (#19687) 2022-04-06 16:17:09 +02:00
coroutines
cpp move io out of system (#19442) 2022-02-02 17:10:11 +01:00
defaultprocparam
deprecated even lighter version of #17938: fix most issues with UnusedImport, XDeclaredButNotUsed, etc; fix #17511, #17510, #14246 (without realModule) (#18362) 2021-06-26 15:21:46 +02:00
destructor default threads on (#19368) 2022-07-06 13:06:41 +02:00
dir with space
discard
distinct Fix distinct requiresInit test and manual (#19901) 2022-06-22 12:36:30 +02:00
distros
dll don't use {.rtl.} for generics, otherwise -d:useNimRtl gives ambiguous identifier nimrtl error (#18406) 2021-07-01 11:14:01 +02:00
effects closes #6559; add testcase (#20200) 2022-08-12 09:03:10 +08:00
enum add testcase for #16462 (#19692) 2022-04-07 20:57:50 +02:00
errmsgs Stop type aliases from inheriting sfUsed (#19861) 2022-06-04 06:25:21 +02:00
exception nimRawSetjmp: support Windows (#19197) 2021-12-10 06:31:29 +01:00
exprs
fields
float rename nimFpRoundtrips => nimPreviewFloatRoundtrip (#18566) 2021-07-23 14:57:47 -07:00
fragmentation
friends
gc remove shallowCopy for ARC/ORC (#20070) 2022-07-26 16:51:01 +02:00
generics No longer segfault when using a typeclass with a self referencing type (#19467) 2022-02-02 09:38:21 +01:00
gensym
global
ic default threads on (#19368) 2022-07-06 13:06:41 +02:00
implicit
import_in_config
importalls
init
isolate fixes #19013 [backport:1.6] (#19111) 2021-11-09 12:43:16 +01:00
iter Fixed compilation of void closureiters with try stmt (#20138) [backport] 2022-08-03 08:46:36 +02:00
js [js] add testcase for array indexDefect and remove todo (#19838) 2022-06-10 20:33:44 +02:00
lent Optimize lent in JS [backport:1.6] (#19393) 2022-01-17 13:03:40 +01:00
let
lexer unicode operator bugfixes (#18802) 2021-09-04 17:49:27 +02:00
lookups
macros fix #20067, fix #18976 [backport] (#20069) 2022-07-22 15:04:07 +08:00
magics style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
manyloc default threads on (#19368) 2022-07-06 13:06:41 +02:00
metatype fixes #18612; apply cache and memcmp for methods in arc/orc (#19749) 2022-04-26 20:14:39 +02:00
method fixes #18612; apply cache and memcmp for methods in arc/orc (#19749) 2022-04-26 20:14:39 +02:00
misc fixes #20132; fixes the broken jsondoc comand [backport] (#20135) 2022-08-04 08:49:51 +02:00
modules Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
namedparams
navigator
newconfig fix #8219; nim check/dump shouldn't run single nimscript project [backport: 1.6] (#19641) 2022-03-26 11:50:15 +01:00
nimble
nimdoc
niminaction default threads on (#19368) 2022-07-06 13:06:41 +02:00
notnil
objects nvro don't touch cdecl types [backport: 1.6] (#19461) 2022-01-28 09:53:42 +01:00
objvariant fix #19266; allow reassign discriminant field (#19567) 2022-02-25 20:33:28 +01:00
openarray style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
osproc fixes #18058 (#18162) 2021-06-03 17:12:45 +02:00
overflw
overload deprecate unsafeAddr; extend addr (#19373) 2022-01-16 11:08:38 +01:00
package Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
package_level_objects
parallel
parser fixes #19662; Indent level errored for first line (#19718) 2022-04-25 12:00:23 +02:00
pragmas fixes #18612; apply cache and memcmp for methods in arc/orc (#19749) 2022-04-26 20:14:39 +02:00
proc manual: Document that comma propagates the default values of parameters (#19080) 2021-11-03 08:08:50 +01:00
procvar
range
rational
realtimeGC
sandwich
sets Add test for issue 15435 (#19079) 2021-11-03 06:46:34 +01:00
showoff style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
slice allow HSlice bounded by constants of distinct types (#19219) [backport:1.2] 2021-12-06 20:38:23 +01:00
specialops
statictypes even lighter version of #17938: fix most issues with UnusedImport, XDeclaredButNotUsed, etc; fix #17511, #17510, #14246 (without realModule) (#18362) 2021-06-26 15:21:46 +02:00
stdlib fixes #20153; do not escape _ for mysql [backport] (#20164) 2022-08-05 17:15:58 -04:00
stmt
strictnotnil deprecate unsafeAddr; extend addr (#19373) 2022-01-16 11:08:38 +01:00
stylecheck fix stylecheck bug with nre (#19356) 2022-04-08 08:04:46 +02:00
system default threads on (#19368) 2022-07-06 13:06:41 +02:00
template fix #20002 (#20004) 2022-07-15 12:37:08 +02:00
testament
testdata Add new self-signed 4096 bit certificate to testdata (#19758) 2022-05-08 11:54:04 +02:00
threads add testcase for #6499 #12229 #7172 (#18547) 2021-07-21 09:47:06 +02:00
tools
trmacros
tuples style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
typerel style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
types Don't reject types directly on AST (#19407) 2022-01-19 12:38:14 +01:00
untestable fixes broken ssl tests (#20181) 2022-08-09 11:48:17 +08:00
usingstmt
valgrind
varres
varstmt
views closes #15897; add testcase (#19961) 2022-07-02 16:51:21 +08:00
vm [vm]fixes #15974 #12551 #19464 #16020 #16780 #16613 #14553 #19909 #18641 (#19902) [backport] 2022-06-22 08:43:58 +02:00
whenstmt
ast_pattern_matching.nim
config.nims Revert "enable nimPreviewDotLikeOps" (#19919) 2022-08-03 22:39:14 +08:00
dummy.txt
js.html
js.nim
m14634.nim
mmaptest.nim Enable customizing PageShift to set PageSize for embedded targets (#19129) 2021-11-16 20:30:07 +01:00
readme.md
rectest.nim
stckovfl.nim
test_nimscript.nims correct typos (#19485) 2022-02-03 11:15:46 +08:00

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.