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:
parent
ef820769a4
commit
3c9fcc4c30
40 changed files with 809 additions and 802 deletions
|
|
@ -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()
|
||||
|
|
@ -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"
|
||||
97
tests/controlflow/tcontrolflow.nim
Normal file
97
tests/controlflow/tcontrolflow.nim
Normal 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
|
||||
|
|
@ -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
|
||||
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue