diff options
Diffstat (limited to 'testes/calls.lua')
| -rw-r--r-- | testes/calls.lua | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/testes/calls.lua b/testes/calls.lua index 12312d60..31028215 100644 --- a/testes/calls.lua +++ b/testes/calls.lua | |||
| @@ -204,6 +204,17 @@ do print"testing chains of '__call'" | |||
| 204 | assert(Res[i][1] == i) | 204 | assert(Res[i][1] == i) |
| 205 | end | 205 | end |
| 206 | assert(Res[N + 1] == "a" and Res[N + 2] == "b" and Res[N + 3] == "c") | 206 | assert(Res[N + 1] == "a" and Res[N + 2] == "b" and Res[N + 3] == "c") |
| 207 | |||
| 208 | local function u (...) | ||
| 209 | local n = debug.getinfo(1, 't').extraargs | ||
| 210 | assert(select("#", ...) == n) | ||
| 211 | return n | ||
| 212 | end | ||
| 213 | |||
| 214 | for i = 0, N do | ||
| 215 | assert(u() == i) | ||
| 216 | u = setmetatable({}, {__call = u}) | ||
| 217 | end | ||
| 207 | end | 218 | end |
| 208 | 219 | ||
| 209 | 220 | ||
