aboutsummaryrefslogtreecommitdiff
path: root/testes/coroutine.lua
diff options
context:
space:
mode:
Diffstat (limited to 'testes/coroutine.lua')
-rw-r--r--testes/coroutine.lua15
1 files changed, 3 insertions, 12 deletions
diff --git a/testes/coroutine.lua b/testes/coroutine.lua
index aaf565fb..0a970e98 100644
--- a/testes/coroutine.lua
+++ b/testes/coroutine.lua
@@ -172,13 +172,12 @@ do
172 assert(not X and coroutine.status(co) == "dead") 172 assert(not X and coroutine.status(co) == "dead")
173 173
174 -- error closing a coroutine 174 -- error closing a coroutine
175 warn("@on")
176 local x = 0 175 local x = 0
177 co = coroutine.create(function() 176 co = coroutine.create(function()
178 local y <close> = func2close(function (self,err) 177 local y <close> = func2close(function (self,err)
179 if (err ~= 111) then os.exit(false) end -- should not happen 178 assert(err == 111)
180 x = 200 179 x = 200
181 error("200") 180 error(200)
182 end) 181 end)
183 local x <close> = func2close(function (self, err) 182 local x <close> = func2close(function (self, err)
184 assert(err == nil); error(111) 183 assert(err == nil); error(111)
@@ -187,16 +186,8 @@ do
187 end) 186 end)
188 coroutine.resume(co) 187 coroutine.resume(co)
189 assert(x == 0) 188 assert(x == 0)
190 -- with test library, use 'store' mode to check warnings
191 warn(not T and "@off" or "@store")
192 local st, msg = coroutine.close(co) 189 local st, msg = coroutine.close(co)
193 if not T then 190 assert(st == false and coroutine.status(co) == "dead" and msg == 200)
194 warn("@on")
195 else -- test library
196 assert(string.find(_WARN, "200")); _WARN = false
197 warn("@normal")
198 end
199 assert(st == false and coroutine.status(co) == "dead" and msg == 111)
200 assert(x == 200) 191 assert(x == 200)
201 192
202end 193end