Create a Generator with testlib
masterA generator produces test cases using a random number generator. Use registerGen(argc, argv, seed_arg_index) to initialize, where seed_arg_index is the index of the command-line argument used to set the random seed.
Common tasks include:
- Generating random numbers:
rnd.next(min, max). - Generating random strings/tokens:
rnd.next("regex_pattern"). - Generating random permutations:
rnd.perm(n, seed). - Accessing command-line arguments:
opt<T>(index).
To ensure different test cases, call the generator with different command-line parameters (seeds).
#include "testlib.h"
int main(int argc, char* argv[]) {
registerGen(argc, argv, 1);
println(rnd.next(1, 10)); /* Random number in the range [1,10]. */
println(rnd.next("[a-zA-Z0-9]{1,1000}")); /* Random word of length [1,1000]. */
}