22 lines
657 B
Nix
22 lines
657 B
Nix
with builtins;
|
|
let
|
|
withIndexes = list: genList (idx: (elemAt list idx) // {index = idx;}) (length list);
|
|
|
|
testLine = report: "${okStr report} ${toString (report.index + 1)} ${report.description}" + testDirective report + testYaml report;
|
|
|
|
# These are part of the TAP spec, not yet implemented.
|
|
testDirective = report: "";
|
|
|
|
testYaml = report: "";
|
|
|
|
okStr = { result, ...}: if result == "pass" then "ok" else "not ok";
|
|
in
|
|
{
|
|
output = reports: ''
|
|
TAP version 13
|
|
1..${toString (length reports)}'' + (foldl' (l: r: l + "\n" + r) "" (map testLine (withIndexes reports))) + ''
|
|
|
|
# Finished at ${toString currentTime}
|
|
'';
|
|
}
|