Mercurial > pub > dyncall > dyncall
comparison test/call_suite/rand-sig.lua @ 494:d45c582b5457
- sharing sig generator between call_suite and call_suite_aggrs tests
author | Tassilo Philipp |
---|---|
date | Mon, 21 Mar 2022 16:06:16 +0100 |
parents | 135c7fb49c2f |
children |
comparison
equal
deleted
inserted
replaced
493:75cb8f79d725 | 494:d45c582b5457 |
---|---|
1 require"config" | 1 require"config" |
2 | 2 |
3 rtypes = "v"..types | 3 -- use shared sig generator |
4 package.path = '../common/?.lua;' .. package.path | |
5 require"rand-sig" | |
4 | 6 |
5 math.randomseed(seed) | |
6 local id | |
7 local uniq_sigs = { } | |
8 for i = 1, ncases do | |
9 local l = '' | |
10 repeat | |
11 local nargs = math.random(minargs,maxargs) | |
12 id = math.random(#rtypes) | |
13 local sig = { rtypes:sub(id,id)} | |
14 for j = 1, nargs do | |
15 id = math.random(#types) | |
16 sig[#sig+1] = types:sub(id,id) | |
17 end | |
18 l = table.concat(sig) | |
19 -- reject dupes | |
20 until uniq_sigs[l] == nil | |
21 uniq_sigs[l] = 1 | |
22 io.write(l.."\n") | |
23 end | |
24 |