<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div dir="ltr">
<div>Hi Matt, thanks!<br>
yeah, it works for single modules (external or core) modifying the flags in `test/CMakeLists.txt` for the specific ${itk_module}TestDriver.<br>
<br>
</div>
<div>Not sure if CodeCov is overwhelmed by running the tests, generating the <code class="gmail-highlighter-rouge">
`.gcda</code>` files , or by the later stage of generating the lcov report with those files.<br>
<br>
If the first case, it is hard to selectively modify flags of child targets from parent CMakeLists.txt, right? So other option would be to modify the CreateTestDriver macro to add coverage flags to some modules, depending on additional cmake variables, but I
 guess is not too elegant?<br>
<br>
</div>
<div>If the later, we can modify the lcov script to generate reports only in selected Modules. And maybe have a CodeCov report per module? In my case, the .gcda files are generated in subfolders, so it is easy to only generate the reports for that module.<br>
<pre class="gmail-highlight"><code><span class="gmail-nb">export </span><span class="gmail-nv">GCOV_PREFIX</span><span class="gmail-o">=</span><span class="gmail-s2">"</span><span class="gmail-nv">$HOME</span><span class="gmail-s2">/Software/ITK/build/Modules/Remote/IsotropicWavelets/test/CMakeFiles/IsotropicWaveletsTestDriver.dir</span></code></pre>
</div>
<div>
<pre class="gmail-highlight"><code>lcov --directory $GCOV_PREFIX --capture --output-file $GCOV_PREFIX/<a href="http://app.info">app.info</a></code></pre>
<br>
It would be great to automatize this indeed!<br>
<br>
</div>
<div>Cheers,<br>
</div>
<div>Pablo<br>
</div>
<div>
<div><br>
</div>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Fri, May 26, 2017 at 2:59 AM, <a href="mailto:matt.mccormick@kitware.com">
matt.mccormick@kitware.com</a> <span dir="ltr"><<a href="mailto:matt.mccormick@kitware.com" target="_blank">matt.mccormick@kitware.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div dir="ltr"><br>
<div class="gmail_extra"><br>
<div class="gmail_quote"><span class="">On Thu, May 25, 2017 at 8:57 AM, Francois Budin
<span dir="ltr"><<a href="mailto:francois.budin@kitware.com" target="_blank">francois.budin@kitware.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="ltr">
<div>That's great! Thanks for sharing!<br>
</div>
</div>
</blockquote>
<div><br>
</div>
</span>
<div>+1!</div>
<div><br>
</div>
<div>90%+ is not too shabby at all :-).</div>
<div><br>
</div>
<div><br>
</div>
<div>Jon and I have investigated CodeCov [1] for ITK [2], but ITK's test suite seems to overwhelm their system.  However, tests for a single external module could work?</div>
<div><br>
</div>
<div>Here are the scripts that we used:</div>
<div><br>
</div>
<div>  <a href="https://gist.github.com/thewtex/1f410c90e8b9e9826989c0e04e97738b" target="_blank">https://gist.github.com/<wbr>thewtex/<wbr>1f410c90e8b9e9826989c0e04e9773<wbr>8b</a></div>
<div>  <a href="https://gist.github.com/thewtex/e3f59fdfba4f30ad2580dbb4db7a22e9" target="_blank">https://gist.github.com/<wbr>thewtex/<wbr>e3f59fdfba4f30ad2580dbb4db7a22<wbr>e9</a></div>
<div>  <a href="https://gist.github.com/thewtex/cc7ade395c7aa309f38b137b8934e075" target="_blank">https://gist.github.com/<wbr>thewtex/<wbr>cc7ade395c7aa309f38b137b8934e0<wbr>75</a></div>
<div><br>
</div>
<div>These work together with the itk_common.cmake CTest script in ITK's Git repository dashboard branch.</div>
<div><br>
</div>
<div>Cheers,</div>
<div>Matt</div>
<div><br>
</div>
<div>[1] <a href="https://codecov.io/" target="_blank">https://codecov.io/</a></div>
<div><br>
</div>
<div>[2] <a href="https://codecov.io/gh/InsightSoftwareConsortium/ITK" target="_blank">https://codecov.io/gh/<wbr>InsightSoftwareConsortium/ITK</a></div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</body>
</html>