2017-05-01 17:07:42 +01:00
|
|
|
with builtins;
|
|
|
|
let
|
|
|
|
withIndexes = list: genList (idx: (elemAt list idx) // {index = idx;}) (length list);
|
|
|
|
|
2017-05-31 17:44:46 +01:00
|
|
|
testLine = report: "${okStr report} ${toString (report.index + 1)} ${report.description}" + testDirective report + testYaml report;
|
2017-05-01 17:07:42 +01:00
|
|
|
|
2017-06-09 17:04:33 +01:00
|
|
|
# These are part of the TAP spec, not yet implemented.
|
2017-07-03 01:18:58 +01:00
|
|
|
#c.f. https://github.com/NixOS/nixpkgs/issues/27071
|
2017-05-01 17:07:42 +01:00
|
|
|
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}
|
|
|
|
'';
|
|
|
|
}
|