mmanela/chutzpah — pull request #298 by Pablissimo (2014-11-15 16:28:44+00:00)
Title: LCOV support: issue #234

My revised proposal for issue #234:
* Console runner gains a /lcov switch that generates LCOV output
* Transforms (junit and lcov) can now be configured via chutzpah.json, relative and absolute paths for output supported

Example chutzpah.json:
````
{
"EnableCodeCoverage": "true",
"References": [
{ "Path": "../code1.js" },
{ "Path": "../code2.js" }
],
"Transforms": [
{ "Name": "lcov", "Path": "lcov.dat" },
{ "Name": "Junit", "Path": "C:/temp/junit.xml" }
]
}
````

LCOV output requires ````EnableCodeCoverage```` to be true and either the /lcov switch specified on the command-line or an entry in the ````Transforms```` collection as above. Output is relative to the chutzpah.json file. Forward-slashes or escaped backslashes should be used where required.

To make it all easily testable actually touched quite a few files - notably, ````IFileSystemWrapper```` now needs injected into ````SummaryTransformer```` instances, which then has associated knock-ons.