Cartesian – generator for complex configurations
github.com
github.com
Alternatively (in python):
dimensions = [boxes, compilers, testcases]
def excl(box, compiler, testcase):
"""Test exclusions.
"""
## don't run loadtest when RAM is low
if compiler == 'loadtest' and box.ram < 8:
return True
return False
for c in itertools.product(*dimensions):
if excl(*c):
continue
run_testcase_with_params(c) mutliplication_table = {
x = alt(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
y = alt(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
get result() {return this.x * this.y}
}The `is()` function, or other system info, could be injected via Jsonnet's external variable feature.