Nim/tests
Dominik Picheta 4f5f98f0b1 Fixes incorrect async exception handling. Adds sleepAsync.
The tasyncexceptions test has been added which tests for this incorrect
exception handling behaviour. The problem was that the exception was
raised inside a callback which was called from a previously finished async
procedure. This caused a "Future already finished" error. The fix was to
simply reraise the exception if the retFutureSym is already finished.

sleepAsync was added to help with the reproduction of this test. It should
also be useful for users however.

Finally some debug information was added to futures to help with future
bugs.
2014-08-09 17:13:22 +01:00
..
actiontable removed flawed thread analysis pass 2014-04-20 14:00:04 +02:00
alias new tester; all tests categorized 2014-01-13 02:10:03 +01:00
ambsym Changed tests and tools to use 'discard' statements instead of 'nil' for empty blocks. 2014-02-15 18:57:03 -05:00
array Fix some tests. 2014-03-31 21:38:35 +02:00
assert Change the expected path in tfailedassert. 2014-04-06 23:57:20 +01:00
assign Improves tobjasgn test. 2014-04-18 23:31:45 +01:00
astoverload new tester; all tests categorized 2014-01-13 02:10:03 +01:00
async Fixes incorrect async exception handling. Adds sleepAsync. 2014-08-09 17:13:22 +01:00
benchmarks Added benchmark tool and some benchmarks. 2012-03-22 20:15:16 +00:00
bind removed flawed thread analysis pass 2014-04-20 14:00:04 +02:00
borrow new tester; all tests categorized 2014-01-13 02:10:03 +01:00
caas Take into account dirty buffers in suggest output; Fixes zah/nimrod.vim#14 2013-08-07 18:58:46 +03:00
casestmt fixes #1103; fixes #1297 2014-07-08 02:02:58 +02:00
ccg fixes #230; fixes #227 2012-10-19 20:45:26 +02:00
ccgbugs Add test for #1081 2014-05-16 19:27:15 -04:00
closure added test 2014-08-05 21:45:58 +02:00
cnstseq new tester; all tests categorized 2014-01-13 02:10:03 +01:00
collections moved tsets test to collections/ 2014-02-12 16:15:34 -06:00
compiles bugfix: unreported 'compiles' bug 2014-03-05 08:47:27 +01:00
concat new tester; all tests categorized 2014-01-13 02:10:03 +01:00
concurrency Tester now appreciates the test target. Modified 'cmd' in specs. 2014-04-16 21:28:19 +01:00
constr new tester; all tests categorized 2014-01-13 02:10:03 +01:00
constraints new tester; all tests categorized 2014-01-13 02:10:03 +01:00
controlflow next steps for closure iterators 2014-01-22 17:32:38 +01:00
converter new tester; all tests categorized 2014-01-13 02:10:03 +01:00
defaultprocparam new tester; all tests categorized 2014-01-13 02:10:03 +01:00
deprecated new tester; all tests categorized 2014-01-13 02:10:03 +01:00
destructor progress on deepCopy 2014-08-01 23:40:48 +02:00
discard fixes #942 2014-03-05 08:30:05 +01:00
distinct borrow dots for distinct types documented 2014-03-26 08:42:27 +01:00
dll Tester now appreciates the test target. Modified 'cmd' in specs. 2014-04-16 21:28:19 +01:00
effects make some tests red :) (i.e. print failure details while running the tester) 2014-03-16 21:05:20 +02:00
enum new tester; all tests categorized 2014-01-13 02:10:03 +01:00
exception Added test cases for return in except statements. 2014-02-23 00:20:16 +01:00
exprs fixes #1161 2014-07-01 21:47:53 +02:00
fields new tester; all tests categorized 2014-01-13 02:10:03 +01:00
float Fixed parsing of float literals. 2014-05-23 11:27:39 +02:00
friends new tester; all tests categorized 2014-01-13 02:10:03 +01:00
gc tester compiles again 2014-02-07 18:49:41 +01:00
generics fixes #1011 2014-07-09 21:10:11 +02:00
gensym new tester; all tests categorized 2014-01-13 02:10:03 +01:00
global fix some trivial errors in the test suite and some more regressions caused by tyTypeDesc[tyNone] 2014-02-18 02:46:14 +02:00
implicit new tester; all tests categorized 2014-01-13 02:10:03 +01:00
init new tester; all tests categorized 2014-01-13 02:10:03 +01:00
iter Tester now appreciates the test target. Modified 'cmd' in specs. 2014-04-16 21:28:19 +01:00
js Tester now appreciates the test target. Modified 'cmd' in specs. 2014-04-16 21:28:19 +01:00
let new tester; all tests categorized 2014-01-13 02:10:03 +01:00
lexer new tester; all tests categorized 2014-01-13 02:10:03 +01:00
lookups Changed tests and tools to use 'discard' statements instead of 'nil' for empty blocks. 2014-02-15 18:57:03 -05:00
macros fixes #1323 2014-07-08 20:12:07 +02:00
magics new tester; all tests categorized 2014-01-13 02:10:03 +01:00
manyloc some progress for jester+async 2014-06-27 16:03:11 +02:00
matrix Tests for $(float) 2014-06-15 01:53:09 +02:00
metatype fixes #898 2014-07-01 22:58:44 +02:00
method Changed tests and tools to use 'discard' statements instead of 'nil' for empty blocks. 2014-02-15 18:57:03 -05:00
misc Add test 2014-06-03 19:05:13 -04:00
module fix some trivial errors in the test suite and some more regressions caused by tyTypeDesc[tyNone] 2014-02-18 02:46:14 +02:00
modules new tester; all tests categorized 2014-01-13 02:10:03 +01:00
namedparams new tester; all tests categorized 2014-01-13 02:10:03 +01:00
namspc new tester; all tests categorized 2014-01-13 02:10:03 +01:00
notnil Added notnil test for issue #1216 2014-06-18 17:47:37 -04:00
objects fixes #1275 2014-07-01 23:41:25 +02:00
objvariant fixes yet another option type 2014-04-03 07:54:58 +02:00
openarray new tester; all tests categorized 2014-01-13 02:10:03 +01:00
osproc Add osproc stdin test. 2014-06-15 12:57:05 +01:00
overflw new tester; all tests categorized 2014-01-13 02:10:03 +01:00
overload make some tests red :) (i.e. print failure details while running the tester) 2014-03-16 21:05:20 +02:00
parallel some changes 2014-06-09 08:03:54 +02:00
parser osproc compiles again for haiku 2014-03-10 17:32:50 +01:00
pragmas parser support anon iterators 2014-01-20 20:07:44 +01:00
proc new tester; all tests categorized 2014-01-13 02:10:03 +01:00
procvar new tester; all tests categorized 2014-01-13 02:10:03 +01:00
range Changed tests and tools to use 'discard' statements instead of 'nil' for empty blocks. 2014-02-15 18:57:03 -05:00
rodfiles Removes executable bit for text files. 2013-03-16 23:53:07 +01:00
seq Rename sequtils.distnct to sequtils.deduplicate. 2014-06-28 19:18:13 +02:00
sets Add TSet difference tests 2014-07-15 02:16:12 +02:00
showoff Tests for $(float) 2014-06-15 01:53:09 +02:00
specialops the delegator pragma becomes a set of dot operators 2014-02-15 17:41:35 +02:00
static teach opcLdObj about nkExprColonExpr 2014-03-09 17:06:29 +02:00
stdlib Remove unnecessary import 2014-07-19 14:37:47 +02:00
system Merge pull request #1273 from katlogic/devel 2014-07-15 22:01:58 +02:00
table Fixed == for PTables, added test. 2014-06-27 16:57:01 +02:00
template fixes the bug that keeps the template engine package from working 2014-05-25 21:20:11 +02:00
testament tester should work again 2014-07-16 01:09:51 +02:00
testdata Removes executable bit for text files. 2013-03-16 23:53:07 +01:00
threads removed flawed thread analysis pass 2014-04-20 14:00:04 +02:00
trmacros fixes #798 2014-04-06 22:05:42 +02:00
tuples new tester; all tests categorized 2014-01-13 02:10:03 +01:00
typerel new concurrency model: first steps; shared is not a keyword anymore 2014-04-14 08:45:43 +02:00
types Tester now appreciates the test target. Modified 'cmd' in specs. 2014-04-16 21:28:19 +01:00
usingstmt new tester; all tests categorized 2014-01-13 02:10:03 +01:00
varres new tester; all tests categorized 2014-01-13 02:10:03 +01:00
varstmt new tester; all tests categorized 2014-01-13 02:10:03 +01:00
vm fixes #1310 2014-07-02 21:15:29 +02:00
benchmark.nim Added benchmark tool and some benchmarks. 2012-03-22 20:15:16 +00:00
js.html Removes executable bit for text files. 2013-03-16 23:53:07 +01:00
js.nim Tester now appreciates the test target. Modified 'cmd' in specs. 2014-04-16 21:28:19 +01:00
mmaptest.nim bugfix: threading on PowerPC 2012-02-02 00:16:33 +01:00
readme.txt Removes executable bit for text files. 2013-03-16 23:53:07 +01:00
rectest.nim Removes executable bit for text files. 2013-03-16 23:53:07 +01:00
stckovfl.nim Removes executable bit for text files. 2013-03-16 23:53:07 +01:00

This directory contains the test cases.
Each test must have a filename of the form: ``t*.nim``

Each test can contain a spec in a ``discard """"""`` block.

The folder ``rodfiles`` contains special tests that test incremental 
compilation via symbol files.

The folder ``dll`` contains simple DLL tests.