Merge tests into a larger file (part 2 of ∞) (#9335)

* merge controlflow tests

* merge distinct tests

* merge enum tests

* merge fields tests

* merge implicit tests

* merge iter issues tests
This commit is contained in:
Miran 2018-10-13 14:58:31 +02:00 • committed by Andreas Rumpf
commit 3c9fcc4c30
40 changed files with 809 additions and 802 deletions

View file

@ -1,44 +0,0 @@
discard """
output: '''10
true true
true false
false true
false false'''
"""
var
x = false
run = true
while run:
run = false
block myblock:
if true:
break
echo "leaving myblock"
x = true
doAssert(x)
# bug #1418
iterator foo: int =
for x in 0 .. 9:
for y in [10,20,30,40,50,60,70,80,90]:
yield x + y
for p in foo():
echo p
break
iterator permutations: int =
yield 10
for p in permutations():
break
# regression:
proc main =
for x in [true, false]:
for y in [true, false]:
echo x, " ", y
main()

View file

@ -1,28 +0,0 @@
discard """
output: "came here"
"""
var i = 0
while i < 400:
if i == 10: break
elif i == 3:
inc i
continue
inc i
var f = "failure"
var j = 0
while j < 300:
for x in 0..34:
if j < 300: continue
if x == 10:
echo "failure: should never happen"
break
f = "came here"
break
if i == 10:
echo f
else:
echo "failure"

View file

@ -0,0 +1,97 @@
discard """
output: '''
10
true true
true false
false true
false false
i == 2
'''
"""
block tbreak:
var
x = false
run = true
while run:
run = false
block myblock:
if true:
break
echo "leaving myblock"
x = true
doAssert(x)
# bug #1418
iterator foo: int =
for x in 0 .. 9:
for y in [10,20,30,40,50,60,70,80,90]:
yield x + y
for p in foo():
echo p
break
iterator permutations: int =
yield 10
for p in permutations():
break
# regression:
proc main =
for x in [true, false]:
for y in [true, false]:
echo x, " ", y
main()
block tcontinue:
var i = 0
while i < 400:
if i == 10: break
elif i == 3:
inc i
continue
inc i
var f = "failure"
var j = 0
while j < 300:
for x in 0..34:
if j < 300: continue
if x == 10:
echo "failure: should never happen"
break
f = "came here"
break
if i == 10:
doAssert f == "came here"
else:
echo "failure"
block tnestif:
var
x, y: int
x = 2
if x == 0:
write(stdout, "i == 0")
if y == 0:
write(stdout, x)
else:
write(stdout, y)
elif x == 1:
write(stdout, "i == 1")
elif x == 2:
write(stdout, "i == 2")
else:
write(stdout, "looks like Python")
#OUT i == 2

View file

@ -1,24 +0,0 @@
discard """
file: "tnestif.nim"
output: "i == 2"
"""
# test nested ifs
var
x, y: int
x = 2
if x == 0:
write(stdout, "i == 0")
if y == 0:
write(stdout, x)
else:
write(stdout, y)
elif x == 1:
write(stdout, "i == 1")
elif x == 2:
write(stdout, "i == 2")
else:
write(stdout, "looks like Python")
#OUT i == 2