Nim/tests
ringabout db8a62d480
fixes #20285; prevent oid time overflow at year 2038 (#20338)
* Revert "fixes  #20285; prevent oid time overflow at year 2038"

This reverts commit dfcdb6ec2ab6a5fa53b6a99294a84fd122be8f8d.

* increase time to 64 bits and clean up

* add testcase

* inline consts

* add a changelog

* fixes  #20285; prevent oid time overflow at year 2038
2022-09-22 21:15:27 +08:00
..
actiontable
alias
align testament: error instead of silently ignore invalid targets; remove pointless alias target vs targets; document matrix; DRY (#16343) 2020-12-14 10:58:29 +01:00
ambsym
arc Add testcase for bug #20305 (#20323) 2022-09-13 19:10:08 +08:00
arithm JS: fix div uint64 no truncation (#16899) 2021-02-15 14:22:46 +01:00
array style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
assert Improve documentation for assertions (#16988) 2021-02-11 07:21:27 +01:00
assign remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
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 fix #16752: threadvar now works with importcpp types; osx now uses native TLS (--tlsEmulation:off), which can be orders of magnitude faster (#16750) 2021-01-27 22:35:43 +01:00
bind remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
borrow Fixed distinct composite type class proc borrowing (#18904) 2021-10-26 11:29:07 +02:00
casestmt support cstring in case (#20130) 2022-09-01 18:10:00 +02:00
ccgbugs remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +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 fixes #10299 (#11324) 2019-05-25 07:33:33 +02:00
compiler Fix #16937; --clib option pass library name to backend C compiler correctly (#19754) 2022-09-01 13:57:17 -04:00
compilerapi big steps torwards an efficient, simple IC implementation (#16543) 2021-01-02 07:30:39 +01:00
compilerfeatures fix #16693: testament spec nimout too lax (#16698) 2021-04-04 13:47:28 -07:00
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 semLambda removed, semProcAux reworked (#17379) 2021-03-17 19:51:50 +01:00
constraints
constructors Turn some of the errors back into warnings 2020-04-01 19:38:44 +02:00
controlflow Make unreachable code a warning instead of an error (#14816) 2020-06-29 08:49:53 +02:00
converter fix #18986; Import/except doesn't work on devel [backport: 1.6] (#19687) 2022-04-06 16:17:09 +02:00
coroutines fix #15628 (#16387) 2021-01-21 17:31:47 +01:00
cpp remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
defaultprocparam Add testcase for #12252 (#15676) 2020-10-22 12:51:03 +02:00
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 remove {.this.} pragma, deprecated since 0.19 (#20201) 2022-08-23 19:44:37 +02:00
dir with space fixes #10042 (allow spaces in import) (#10504) 2019-01-31 08:20:00 +01:00
discard improve the 'has to be discarded' error message 2020-05-02 22:31:19 +02:00
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 fix tdistros test which was failing on Nightlies 2020-04-28 15:59:32 +02:00
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 remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
enum overloadable enums no longer experimental (#20298) 2022-09-05 23:38:38 +02:00
errmsgs Improve error message when instantiating generics with object constructor (#20358) 2022-09-21 21:11:39 -04:00
exception remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
exprs fix #16693: testament spec nimout too lax (#16698) 2021-04-04 13:47:28 -07:00
fields use doAssert in tests (#16486) 2020-12-28 14:13:21 +01:00
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 fixes Thread initializer for ARC/ORC on Macos (#20368) 2022-09-16 16:35:53 -04:00
gensym fixes yet another gensym regression (#12145) 2019-09-06 00:45:00 +02:00
global
ic disable tlsEmulation for ic tests (#20345) 2022-09-14 12:06:05 +08:00
implicit
import_in_config
importalls typo: nonexistant => nonexistent (#17918) 2021-05-02 00:26:41 +02:00
init close #17636 (#17643) 2021-04-06 16:20:01 +02:00
isolate fixes #19013 [backport:1.6] (#19111) 2021-11-09 12:43:16 +01:00
iter remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
js fix #20233 Float ranges in case statement in JS crash compiler (#20349) 2022-09-14 17:16:34 +02:00
lent Optimize lent in JS [backport:1.6] (#19393) 2022-01-17 13:03:40 +01:00
let Allow let to not have value when using importc (#14258) 2020-05-12 20:28:18 +02:00
lexer unicode operator bugfixes (#18802) 2021-09-04 17:49:27 +02:00
lookups new .redefine pragma for templates, warn on redefinition without it (#20211) 2022-08-23 21:41:30 +02:00
macros remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02: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 Revert "fixes #20155; repr range with distinct types is broken with ORC" (#20334) 2022-09-11 16:56:11 -04:00
method fixes #20391; make of operator work with generics for ORC (#20395) 2022-09-21 10:29:39 +02:00
misc remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
modules Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
namedparams fixes #12196 2019-09-16 12:12:44 +02:00
navigator IC navigator: added support for include files (#17784) 2021-04-19 22:37:09 +02:00
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 testament spec: remove errmsg alias of errormsg (#16188) 2020-11-29 17:32:34 -08:00
nimdoc fix #16993, #18054, #17835 runnableExamples now works with templates and nested templates (#18082) 2021-06-02 09:02:14 -07:00
niminaction default threads on (#19368) 2022-07-06 13:06:41 +02:00
notnil add testcase for #9466 (#17538) 2021-03-28 00:57:22 -07:00
objects remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02: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 Fix #15706 (#15846) 2020-11-07 08:00:41 +00:00
overload remove {.this.} pragma, deprecated since 0.19 (#20201) 2022-08-23 19:44:37 +02:00
package Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
package_level_objects
parallel add colon (#17834) 2021-04-24 18:33:29 +01:00
parser use arrow precedence in spec (#20166) 2022-09-06 21:24:32 +02:00
pragmas Allow custom pragma on iterators [backport] (#20344) 2022-09-17 02:10:47 +08:00
proc manual: Document that comma propagates the default values of parameters (#19080) 2021-11-03 08:08:50 +01:00
procvar
range change --hint[X] => --hint:X in nim repo (avoids shell quoting issues) (#18085) 2021-05-26 09:51:48 +02:00
rational Error -> Defect for defects (#13908) 2020-04-28 19:56:01 +02:00
realtimeGC testament: remove deadcode related to realtimeGC, testC, callCCompiler (#18087) 2021-05-26 11:49:01 -07:00
sandwich fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 2021-03-09 20:19:24 +01:00
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 tests and docs for call operator (#16980) 2021-02-09 12:18:16 +01:00
statictypes remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
stdlib fixes #20285; prevent oid time overflow at year 2038 (#20338) 2022-09-22 21:15:27 +08:00
stmt fix #15972 (#15994) 2020-11-18 00:14:14 +00:00
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 fixes nimPreviewSlimSystem; register echoBinSafe for nimPreviewSlimSystem (#20194) 2022-08-24 13:32:11 +02:00
template fix #13515 [backport] (#20315) 2022-09-11 08:33:24 +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 add testcase for #6499 #12229 #7172 (#18547) 2021-07-21 09:47:06 +02:00
tools nimgrep: add --inContext and --notinContext options (#19528) 2022-09-14 18:28:01 +02:00
trmacros new .redefine pragma for templates, warn on redefinition without it (#20211) 2022-08-23 21:41:30 +02:00
tuples style usages part one (openarray => openArray) (#19321) 2022-01-04 13:29:50 +01:00
typerel remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
types remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02: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 testament: support disabled:osx as alias to disabled:macosx (#17124) 2021-02-22 11:01:15 +01:00
varres close #17636 (#17643) 2021-04-06 16:20:01 +02:00
varstmt
views [Testament] Extend and document message testing aids (#19996) 2022-09-01 17:52:13 +02:00
vm remove echo statements in tests (part 1) (#20178) 2022-08-23 19:28:51 +02:00
whenstmt remove echo statements in tests (part 1) (#20178) 2022-08-23 19:28:51 +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 fixes #19713; Revert "Remove tlsEmulation enabled from Windows + GCC config" (#19119) (#20327) 2022-09-19 09:16:54 +02:00
dummy.txt
js.html
js.nim
m14634.nim use doAssert in tests (#16486) 2020-12-28 14:13:21 +01:00
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 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.

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.