Nim/tests
Andrey Makarov 8ed2431db0
Implement Unix file regularity check (#20448) (#20628)
* Implement Unix file regularity check

* update std/dirs also
2022-10-25 07:42:47 +02:00
..
actiontable
alias fix #19349 incompatible type when mixing float32 and cfloat in generics (#20551) 2022-10-21 09:28:18 +02:00
align
ambsym closed ambiguous enum defaults to first overload (#20457) 2022-10-01 13:30:23 +02:00
arc fixes #20572 (#20585) 2022-10-17 23:48:51 +02:00
arithm
array style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
assert
assign defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
astoverload
astspec fix deprecated example (#18721) 2021-08-21 08:22:00 +02:00
async defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
avr default threads on (#19368) 2022-07-06 13:06:41 +02:00
benchmarks
bind 'lock levels' are deprecated, now a noop (#20539) 2022-10-11 09:17:09 +02:00
borrow borrowed procs can have a body now for documentation generation (#20617) 2022-10-24 10:08:39 +02:00
casestmt support cstring in case (#20130) 2022-09-01 18:10:00 +02:00
ccgbugs move widestrs out of system (#20462) 2022-10-01 22:35:09 +02:00
ccgbugs2 [add testcase] NRVO does not occur with init procedures (#19462) 2022-01-29 14:06:54 +01:00
clearmsg
closure fix #20152 Illegal capture of closure iterator, when should be legal (#20607) 2022-10-21 09:59:05 +02:00
cnstseq
collections follow up #20109; remove shallow seqs/strings for ORC (#20502) 2022-10-06 07:16:50 +02:00
compilepragma
compiler correct grammar (ref #20199) and add check for grammar.txt (#20494) 2022-10-06 16:36:32 +02:00
compilerapi
compilerfeatures
compiles deprecate unsafeAddr; extend addr (#19373) 2022-01-16 11:08:38 +01:00
concat
concepts defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
constr fix #18990 Regression in proc symbol resolution; Error: attempting to… (#20554) 2022-10-12 20:44:45 -04:00
constraints
constructors
controlflow
converter follow up #20109; remove shallow seqs/strings for ORC (#20502) 2022-10-06 07:16:50 +02:00
coroutines
cpp closes #4678; add testcase (#20634) 2022-10-24 09:26:07 +08:00
defaultprocparam
deprecated store full definition AST for consts, fix noRewrite (#20115) 2022-09-28 15:05:01 +02:00
destructor new move analyser2 (#20471) 2022-10-01 16:46:51 +02:00
dir with space
discard
distinct remove a special case in sigmatch; distinct pointer types no longer match nil type (#20251) 2022-08-23 19:27:20 +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 fixes a strict case object problem that has been reported on the forum (#20614) 2022-10-21 22:46:32 +02:00
enum closed ambiguous enum defaults to first overload (#20457) 2022-10-01 13:30:23 +02:00
errmsgs 'lock levels' are deprecated, now a noop (#20539) 2022-10-11 09:17:09 +02:00
exception Remove side-effects from sysFatal with panics on (#20632) 2022-10-24 07:57:49 +02: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 closes #4466; add testcase (#20625) 2022-10-23 16:47:52 +08:00
gensym defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
global
ic defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
import_in_config
importalls
init DAA and 'out' parameters (#20506) 2022-10-06 17:08:41 +02:00
isolate fixes #19013 [backport:1.6] (#19111) 2021-11-09 12:43:16 +01:00
iter Fix double defer with break in closureiterators [backport] (#20630) 2022-10-24 08:50:48 +02:00
js fix #8821 JS codegen can produce extreme switch statements with case … (#20548) 2022-10-14 12:21:02 +02:00
lent 'lock levels' are deprecated, now a noop (#20539) 2022-10-11 09:17:09 +02:00
let
lexer Unicode Operators are no longer experimental (#20444) 2022-09-28 22:37:26 +02:00
lookups new .redefine pragma for templates, warn on redefinition without it (#20211) 2022-08-23 21:41:30 +02:00
macros store full definition AST for consts, fix noRewrite (#20115) 2022-09-28 15:05:01 +02:00
magics defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
manyloc defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
metatype defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
method fixes #20515; base method requires explicit {.gcsafe.} to be GC-safe (#20574) 2022-10-16 13:20:05 +02:00
misc fixes nim check with orc (#20456) 2022-10-02 06:44:10 +02:00
modules defaults to ORC (#19972) 2022-09-23 13:05:05 +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 defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
notnil
objects add type check for default fields (#20652) 2022-10-25 07:39:57 +02:00
objvariant fix #19266; allow reassign discriminant field (#19567) 2022-02-25 20:33:28 +01:00
openarray enable static tests for topenarray (#20620) 2022-10-23 00:36:11 +08:00
osproc
overflw
overload fixes #20645 (#20646) 2022-10-24 21:41:29 +02:00
package Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
package_level_objects
parallel defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
parser defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
pragmas 'lock levels' are deprecated, now a noop (#20539) 2022-10-11 09:17:09 +02:00
proc fix #18136 tests/proc/t17157.nim now gives SIGSEGV instead of error (#20555) 2022-10-13 06:39:43 +02:00
procvar
range fix #19678 Broken behavior with string ranges in case labels (#20475) 2022-10-01 18:17:07 +02:00
rational
realtimeGC
sandwich
sets overloadable enums no longer experimental (#20298) 2022-09-05 23:38:38 +02: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 'lock levels' are deprecated, now a noop (#20539) 2022-10-11 09:17:09 +02:00
stdlib Implement Unix file regularity check (#20448) (#20628) 2022-10-25 07:42:47 +02:00
stmt
strictnotnil [Testament] Extend and document message testing aids (#19996) 2022-09-01 17:52:13 +02:00
stylecheck fixes #20397; fixes stylecheck regression (#20398) 2022-09-21 15:04:33 -04:00
system follow up #20109; remove shallow seqs/strings for ORC (#20502) 2022-10-06 07:16:50 +02:00
template fixes #1027; disallow templates to use ambiguous identifiers (#20631) 2022-10-24 21:44:09 +02:00
testament [Testament] Extend and document message testing aids (#19996) 2022-09-01 17:52:13 +02:00
testdata Add new self-signed 4096 bit certificate to testdata (#19758) 2022-05-08 11:54:04 +02:00
threads Make output assertion deterministic for test for #7172 (#20495) 2022-10-05 20:14:22 -04:00
tools fixes niminst with stricteffects; add testcase for niminst (#20587) 2022-10-18 08:59:02 +02:00
trmacros store full definition AST for consts, fix noRewrite (#20115) 2022-09-28 15:05:01 +02:00
tuples style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
typerel defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
types closes #11267; closes #11259; closes #11085; add testcases (#20505) 2022-10-06 02:30:10 +08:00
untestable fixes broken ssl tests (#20181) 2022-08-09 11:48:17 +08:00
usingstmt remove {.this.} pragma, deprecated since 0.19 (#20201) 2022-08-23 19:44:37 +02:00
valgrind
varres
varstmt
views Unpack mSlice tupleconstr for static openarrays (#20615) 2022-10-22 06:37:23 +02:00
vm Unpack mSlice tupleconstr for static openarrays (#20615) 2022-10-22 06:37:23 +02:00
whenstmt fix #19426 compile error using when/elif/else and typedesc in template (#20550) 2022-10-21 09:26:46 +02:00
ast_pattern_matching.nim remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
config.nims add default field support for object in ARC/ORC (#20480) 2022-10-04 12:45:10 +02: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 [Testament] Extend and document message testing aids (#19996) 2022-09-01 17:52:13 +02:00
rectest.nim
stckovfl.nim
test_nimscript.nims move widestrs out of system (#20462) 2022-10-01 22:35:09 +02: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.

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.