[Insight-developers] STEP 1: REMOVE UNTESTED CODE BY FRIDAY AUGUST 8, 9:00 EST

Luis Ibanez luis . ibanez at kitware . com
Wed, 06 Aug 2003 16:19:53 -0400


Hi Damion,

Thanks for looking into the coverage for your classes.

It seems that the way in which the original list was generated
is not the right approach for tackling the coverage problem.

I generated that list by taking the classes with 0%,
that was my mistake.

The correct way to look at the coverage report is to concentrate
on the lines marked as RED.  The coloration is done by taking
into account both the coverage percent and the number of untested
lines.  For that reason you will find files with 0% coverage
but colored green, (e.g. the case of the itkConditionalConstIterator).
The green is allowed for this class because the number of lines
is too low.

So please, disregard the previous listing and look only at the
files marked as red, when the report is ordered by "Coverage Status".
http://www . itk . org/Testing/Sites/esopus . crd/SunOS-5 . 7-c++/20030806-0500-Nightly/CoverageByStatus . html

For example a critical class may be the
itkParallelSparseFieldLevelSetImageFilter
http://www . itk . org/Testing/Sites/esopus . crd/SunOS-5 . 7-c++/Coverage/__Code_BasicFilters_itkParallelSparseFieldLevelSetImageFilter_txx . html
that shows up as 28% covered but having 1052 lines of code
that have never been exercised.

or the itkBloxBoundaryPointImageToBloxBoundaryProfileImageFilter
which has 183 lines of untested code.
http://www . itk . org/Testing/Sites/esopus . crd/SunOS-5 . 7-c++/Coverage/__Code_BasicFilters_itkBloxBoundaryPointImageToBloxBoundaryProfileImageFilter_txx . html



Please let us know if you encounter any problem with
reporting of the red classes,




    Thanks


      Luis


----------------------
Damion Shelton wrote:
> Hi Luis,
> 
> I have a few questions and comments regarding the classes on the list 
> I'm responsible for:
> 
> ---
> 
> ./­Code/­Common/­itkConditionalConstIterator.h
> 
> I'm not sure why this is coming up as untested. It should be exercised 
> in itkFloodFilledSpatialFunctionTest.cxx, starting at line 107. It is 
> the base class for all conditional iterators, and they are tested in our 
> code (in the above test and elsewhere) quite extensively.
> 
> ---
> 
> ./­Code/­Common/­itkSpatialFunction.h
> 
> Again, we create spatial functions in a number of tests.
> 
> ---
> 
> ./­Code/­Common/­itkBloxBoundaryPointPixel.h
> ./­Code/­Common/­itkBloxItem.h
> 
> These are possibly untested, although I would think that they should be 
> covered along with the other Blox code in the four Blox tests found in 
> /Testing/Code/BasicFilters
> 
> ---
> 
> ./­Code/­Common/­itkConditionalIterator.h
> ./­Code/­Common/­itkConditionalIterator.txx
> 
> Correct me if I'm wrong, but I think this class is now superfluous and 
> can be removed. It was originally the non-const version of the 
> conditional iterator tree, but the derivation of that code was changed a 
> while back so that non-const versions of the iterators derive from the 
> specific const iterator. I.e., the non-const version the flood filled 
> iterator never derives from the itkConditionalIterator base class. Does 
> this sound correct to anyone?
> 
> ---
> 
> ./­Code/­Common/­itkFloodFilledFunctionConditionalIterator.h
> ./­Code/­Common/­itkFloodFilledFunctionConditionalIterator.txx
> 
> It's also possible that this code is now superfluous, based on the same 
> argument as above.
> 
> ---
> 
> ./­Code/­Common/­itkFloodFilledImageFunctionConditionalIterator.txx
> 
> I didn't write this class, but I assume it's important to someone...
> 
> ---
> 
> ./­Code/­Common/­itkFloodFilledSpatialFunctionConditionalIterator.txx
> 
> This class contains no code, only a namespace placeholder. I'm assuming 
> there was code there back when  I first wrote it that was removed when 
> the conditional iterator stuff was overhauled. If that's confusing 
> things, it can probably be removed without problems (subject to removing 
> the .txx reference from the .h).
> 
> -Damion-
> 
> ---------
> Damion Shelton
> Carnegie Mellon University, Robotics Institute
> A408-o Newell Simon Hall
> 412.268.3866 (office)
> 412.818.8829 (cell)
> http://www . cs . cmu . edu/~beowulf
> ---------
> During the Middle Ages, probably one of the biggest mistakes was not 
> putting on your armor because you were "just going down to the corner."
> 
>