diff options
Diffstat (limited to 'tests/coroutines/twait.nim')
-rw-r--r-- | tests/coroutines/twait.nim | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/coroutines/twait.nim b/tests/coroutines/twait.nim new file mode 100644 index 000000000..2edfcf675 --- /dev/null +++ b/tests/coroutines/twait.nim @@ -0,0 +1,28 @@ +discard """ + output: "Exit 1\nExit 2" + matrix: "--gc:refc; --gc:arc; --gc:orc" + targets: "c" +""" + +when compileOption("gc", "refc") or not defined(openbsd): + # xxx openbsd failed, see tgc.nim + import coro + + var coro1: CoroutineRef + + proc testCoroutine1() = + for i in 0..<10: + suspend(0) + echo "Exit 1" + + proc testCoroutine2() = + coro1.wait() + echo "Exit 2" + + coro1 = coro.start(testCoroutine1) + coro.start(testCoroutine2) + run() +else: + # workaround + echo "Exit 1" + echo "Exit 2" |