new tester; all tests categorized

This commit is contained in:
Araq 2014-01-13 02:10:03 +01:00
commit 20b5f31c03
481 changed files with 794 additions and 2506 deletions

View file

@ -0,0 +1,21 @@
discard """
file: "toverflw.nim"
output: "the computation overflowed"
"""
# Tests nimrod's ability to detect overflows
{.push overflowChecks: on.}
var
a, b: int
a = high(int)
b = -2
try:
writeln(stdout, b - a)
except EOverflow:
writeln(stdout, "the computation overflowed")
{.pop.} # overflow check
#OUT the computation overflowed

View file

@ -0,0 +1,10 @@
discard """
file: "toverflw2.nim"
outputsub: "Error: unhandled exception: over- or underflow [EOverflow]"
exitcode: "1"
"""
var a : int32 = 2147483647
var b : int32 = 2147483647
var c = a + b

23
tests/overflw/tovfint.nim Normal file
View file

@ -0,0 +1,23 @@
discard """
file: "tovfint.nim"
output: "works!"
"""
# this tests the new overflow literals
var
i: int
i = int(0xffffffff'i32)
when defined(cpu64):
if i == -1:
write(stdout, "works!\n")
else:
write(stdout, "broken!\n")
else:
if i == -1:
write(stdout, "works!\n")
else:
write(stdout, "broken!\n")
#OUT works!