view test/call_suite/rand-sig.lua @ 437:135c7fb49c2f

- call_suite: made generator produce unique signatures; regenerated case list
author Tassilo Philipp
date Wed, 26 Jan 2022 13:26:39 +0100
parents 1cb8a65ea27f
children d45c582b5457
line wrap: on
line source

require"config"

rtypes   = "v"..types

math.randomseed(seed)
local id
local uniq_sigs = { }
for i = 1, ncases do
  local l = ''
  repeat
    local nargs = math.random(minargs,maxargs)
    id = math.random(#rtypes)
    local sig = { rtypes:sub(id,id)}
    for j = 1, nargs do
      id = math.random(#types)
      sig[#sig+1] = types:sub(id,id)
    end
	l = table.concat(sig)
    -- reject dupes
  until uniq_sigs[l] == nil
  uniq_sigs[l] = 1
  io.write(l.."\n")
end