[Insight-developers] STEP 1: Code coverage push

Robert Tamburo rjtst21+ at pitt . edu
Wed, 6 Aug 2003 23:33:11 -0400


I am looking at fixing (RED):
./­Code/­BasicFilters/­itkBloxBoundaryPointImageToBloxBoundaryProfileImageFi
lter.txx
./­Code/­BasicFilters/­itkBloxBoundaryProfileImageToBloxCoreAtomImageFilter.
txx
./­Code/­Common/­itkBloxBoundaryProfileItem.txx

Also, we (Pitt/CMU) would like to remove ./­Code/­IO/­itkVOLImageIO.cxx from
ITK (I'm not exactly sure how to do this). We are no longer contributing
Volumetrics RT3D Ultrasound data. Instead we have a no-cost extension to
contribute the new RT3D Ultrasound data from Phillips.

Just to clarify 0.00% is ok if it's GREEN????

-Rob

----- Original Message ----- 
From: "Luis Ibanez" <luis . ibanez at kitware . com>
To: "C. Aaron Cois" <cacst11 at pitt . edu>
Cc: "Insight Developers List" <insight-developers at public . kitware . com>
Sent: Wednesday, August 06, 2003 6:36 PM
Subject: Re: [Insight-developers] STEP 1: Code coverage push


>
> Hi Aaron,
>
> Sorry for the explosive surprise,
>
> (Beware that this is just "Step 1" of the
> release process  :-/ )
>
> ---
>
> Thanks for looking into the coverage list.
>
> Please note that the critical files are the
> ones marked in RED in the following report
>
http://www . itk . org/Testing/Sites/esopus . crd/SunOS-5 . 7-c++/20030806-0500-Nightly/CoverageByStatus . html
>
>
> The file itkBinaryMedialNodeMetric.h is ok (green)
> but the  itkBinaryMedialNodeMetric.txx is quite red with 0%
> coverage = 80 lines of executable code untested.
>
http://www . itk . org/Testing/Sites/esopus . crd/SunOS-5 . 7-c++/Coverage/__Code_Algorithms_itkBinaryMedialNodeMetric_txx . html
>
> Note that for templated classes, the "####" also
> means "NEVER BEING COMPILED". Just for the record, we have
> found surprises like the fact that the Set()/Get() method
> in the Reverse Iterator have never been compiled,... and
> of course... they were broken.
>
> The file
> ­itkMedialNodePairCorrespondenceProcess.h is ok (yellow)
>
> but
> -itkMedialNodePairCorrespondenceProcess.txx is RED with
> 0% coverage and 220 of noncovered executable code.
>
>
> itkMedialNodeTripletCorrespondenceProcess.txx has 0%
> and 162 lines of uncovered code.
>
> Note that it is not enough to instantiate the classes.
> The test must exercise every single method of the class,
> since otherwise the method don't even get compiled.
>
>
> itkCorrespondenceDataStructure.h and .txx are yellow and green.
> itkCorrespondingList.h and .txx are ok (green)
> itkCorrespondingMedialNodeClique.h and .txx are ok (green)
> itkNodeList.h and .txx are ok (green)
> itkSecondaryNodeList.h and .txx are ok (green)
>
>
>
> Please increase the coverage for the classes that are
> listed in red.
>
>
>
> Thanks a lot for helping in this process.
>
>
>
>    Luis
>
>
>
>
> ------------------------
> C. Aaron Cois wrote:
>  > Hi Luis,
>  >
>  >    Sorry this is a few days late, but i just got back into town half an
>  > hour ago (no internet access for 3 days, and your life explodes ;)  )
>  >
>  > Anyway, i wanted to confirm that the following classes are all tested
in
>  > the file itkMedialNodeCorrespondenceTest.cxx:
>  >
>  > ./­Code/­Algorithms/­itkBinaryMedialNodeMetric.h
>  > ./­Code/­Algorithms/­itkBinaryMedialNodeMetric.txx
>  > ./­Code/­Algorithms/­itkMedialNodePairCorrespondenceProcess.h
>  > ./­Code/­Algorithms/­itkMedialNodePairCorrespondenceProcess.txx
>  > ./­Code/­Algorithms/­itkMedialNodeTripletCorrespondenceProcess.h
>  > ./­Code/­Algorithms/­itkMedialNodeTripletCorrespondenceProcess.txx
>  > ./­Code/­Common/­itkCorrespondenceDataStructure.h
>  > ./­Code/­Common/­itkCorrespondenceDataStructure.txx
>  > ./­Code/­Common/­itkCorrespondingList.h
>  > ./­Code/­Common/­itkCorrespondingList.txx
>  > ./­Code/­Common/­itkCorrespondingMedialNodeClique.h
>  > ./­Code/­Common/­itkCorrespondingMedialNodeClique.txx
>  > ./­Code/­Common/­itkNodeList.txx
>  > ./­Code/­Common/­itkSecondaryNodeList.h
>  > ./­Code/­Common/­itkSecondaryNodeList.t
>  >
>  > They are all dependent on each other, and thus are tested together in
>  > the same test.
>  >
>  >    -Aaron Cois
>  >
>  > Luis Ibanez wrote:
>  >
>  >>
>  >> The files/classes in the list below will be removed
>  >> from the Insight CVS repository on
>  >>
>  >>            Friday August 8  9:00 EST
>  >>
>  >> Reason for removal:
>  >>
>  >>              Code with 0% coverage
>  >>
>  >> Philosopical principle:
>  >>
>  >>      "If it is not tested, it is broken"
>  >>
>  >> If you have any professional or emotional attachements
>  >> to any of the files in this list and would like to
>  >> prevent its removal from the repository, please add
>  >> a test for this code in the Insight/Testing directory.
>  >>
>  >> New testing must compile. CVS write access will be
>  >> removed for anyone commiting non-compiling tests.
>  >> The reason being that a non-compiling test prevents
>  >> at least 100 other tests from running.
>  >>
>  >> No files should be added to Insigth/Code under the
>  >> pretext of supporting testing. Code freezing is in
>  >> effect on the Insight/Code directory.
>  >>
>  >> Abtract classes must be tested by instantiating one
>  >> of their concrete derived classes and exercising on
>  >> them the functionalities provided by the abtract class.
>  >>
>  >> -------------- THE LIST -----------------------------
>  >>
>  >> ./­Code/­Algorithms/­itkImageShapeModelEstimatorBase.h
>  >> ./­Code/­Algorithms/­itkBinaryMedialNodeMetric.h
>  >> ./­Code/­Algorithms/­itkBinaryMedialNodeMetric.txx
>  >> ./­Code/­Algorithms/­itkMedialNodePairCorrespondenceProcess.h
>  >> ./­Code/­Algorithms/­itkMedialNodePairCorrespondenceProcess.txx
>  >> ./­Code/­Algorithms/­itkMedialNodeTripletCorrespondenceProcess.h
>  >> ./­Code/­Algorithms/­itkMedialNodeTripletCorrespondenceProcess.txx
>  >>
>
./­Code/­Algorithms/­itkNarrowBandThresholdSegmentationLevelSetImageFilter.h
>
>  >>
>  >>
>
./­Code/­Algorithms/­itkNarrowBandThresholdSegmentationLevelSetImageFilter.t
xx
>
>  >>
>  >> ./­Code/­BasicFilters/­itkImageToMeshFilter.h
>  >> ./­Code/­BasicFilters/­itkGrayscaleFunctionDilateImageFilter.txx
>  >> ./­Code/­BasicFilters/­itkGrayscaleFunctionErodeImageFilter.txx
>  >> ./­Code/­BasicFilters/­itkExtractOrthogonalSwath2DImageFilter.txx
>  >> ./­Code/­Common/­itkBloxBoundaryProfileItem.h
>  >> ./­Code/­Common/­itkBloxBoundaryProfileItem.txx
>  >> ./­Code/­Common/­itkBloxBoundaryProfilePixel.h
>  >> ./­Code/­Common/­itkBloxBoundaryProfilePixel.txx
>  >> ./­Code/­Common/­itkConceptChecking.h
>  >> ./­Code/­Common/­itkConditionalConstIterator.h
>  >> ./­Code/­Common/­itkDecisionRuleBase.h
>  >> ./­Code/­Common/­itkDynamicLoader.cxx
>  >> ./­Code/­Common/­itkEventObject.cxx
>  >> ./­Code/­Common/­itkMetaDataObjectBase.h
>  >> ./­Code/­Common/­itkInPlaceImageFilter.h
>  >> ./­Code/­Common/­itkImageRegionReverseIterator.h
>  >> ./­Code/­Common/­itkInteriorExteriorSpatialFunction.h
>  >> ./­Code/­Common/­itkSmartPointerForwardReference.h
>  >> ./­Code/­Common/­itkSpatialFunction.h
>  >> ./­Code/­Common/­itkThinPlateR2LogRSplineKernelTransform.txx
>  >> ./­Code/­Common/­itkVolumeSplineKernelTransform.txx
>  >> ./­Code/­Common/­itkFiniteDifferenceSparseImageFunction.txx
>  >> ./­Code/­Common/­itkCorrespondenceDataStructure.h
>  >> ./­Code/­Common/­itkCorrespondenceDataStructure.txx
>  >> ./­Code/­Common/­itkCorrespondingList.h
>  >> ./­Code/­Common/­itkCorrespondingList.txx
>  >> ./­Code/­Common/­itkCorrespondingMedialNodeClique.h
>  >> ./­Code/­Common/­itkCorrespondingMedialNodeClique.txx
>  >> ./­Code/­Common/­itkNodeList.txx
>  >> ./­Code/­Common/­itkSecondaryNodeList.h
>  >> ./­Code/­Common/­itkSecondaryNodeList.txx
>  >> ./­Code/­IO/­itkVOLImageIOFactory.cxx
>  >> ./­Code/­IO/­itkVOLImageIOFactory.h
>  >> ./­Code/­IO/­itkIOCommon.cxx
>  >> ./­Code/­IO/­itkIPLCommonImageIO.h
>  >> ./­Code/­IO/­itkRegularExpressionSeriesFileNames.cxx
>  >> ./­Code/­IO/­itkRegularExpressionSeriesFileNames.h
>  >> ./­Code/­Numerics/­itkSingleValuedNonLinearVnlOptimizer.h
>  >> ./­Utilities/­kwsys/­RegularExpression.cxx
>  >> ./­Code/­Numerics/­FEM/­itkFEMElement2DC0QuadraticTriangular.cxx
>  >> ./­Code/­Numerics/­FEM/­itkFEMElement2DC0QuadraticTriangular.h
>  >> ./­Code/­Numerics/­FEM/­itkFEMElement2DMembrane.h
>  >> ./­Code/­Numerics/­FEM/­itkFEMElement2DMembrane.txx
>  >> ./­Code/­Numerics/­FEM/­itkFEMElement3DMembrane.h
>  >> ./­Code/­Numerics/­FEM/­itkFEMElement3DMembrane.txx
>  >> ./­Code/­Numerics/­FEM/­itkFEMException.cxx
>  >> ./­Code/­Numerics/­FEM/­itkFEMException.h
>  >> ./­Code/­Numerics/­FEM/­itkFEMGenerateMesh.cxx
>  >> ./­Code/­Numerics/­FEM/­itkFEMImageMetricLoad.h
>  >> ./­Code/­Numerics/­FEM/­itkFEMImageMetricLoad.txx
>  >> ./­Code/­Numerics/­FEM/­itkFEMImageMetricLoadImplementation.h
>  >>
./­Code/­Numerics/­FEM/­itkFEMLoadImplementationGenericLandmarkLoad.cxx
>  >> ./­Code/­Numerics/­FEM/­itkFEMLoadImplementationGenericLandmarkLoad.h
>  >> ./­Code/­Numerics/­FEM/­itkFEMSolverCrankNicolson.cxx
>  >> ./­Code/­Numerics/­FEM/­itkFEMSolverCrankNicolson.h
>  >> ./­Code/­Numerics/­FEM/­itkFEMElement2DStrain.h
>  >> ./­Code/­Numerics/­FEM/­itkFEMElement2DStrain.txx
>  >> ./­Code/­Numerics/­Statistics/­itkDecisionRuleBase.h
>  >> ./­Code/­Algorithms/­itkBioGeneNetwork.h
>  >> ./­Code/­Algorithms/­itkImageMomentsCalculator.h
>  >> ./­Code/­Algorithms/­itkMeanSquaresPointSetToImageMetric.h
>  >> ./­Code/­Algorithms/­itkMeanSquaresPointSetToImageMetric.txx
>  >> ./­Code/­Algorithms/­itkMultiResolutionImagePyramid.txx
>  >> ./­Code/­Algorithms/­itkRayCastInterpolateImageFunction.txx
>  >> ./­Code/­Algorithms/­itkRegistrationMethod.h
>  >> ./­Code/­Algorithms/­itkRegistrationMethod.txx
>  >> ./­Code/­Algorithms/­itkVoronoiSegmentationRGBImageFilter.h
>  >> ./­Code/­Algorithms/­itkVoronoiSegmentationRGBImageFilter.txx
>  >> ./­Code/­Algorithms/­itkRayCastInterpolateImageFunction.h
>  >> ./­Code/­Algorithms/­itkUnsharpMaskLevelSetImageFilter.h
>  >>
>
./­Code/­Algorithms/­itkMeanReciprocalSquareDifferencePointSetToImageMetric.
h
>
>  >>
>  >>
>
./­Code/­Algorithms/­itkMeanReciprocalSquareDifferencePointSetToImageMetric.
txx
>
>  >>
>  >> ./­Code/­Algorithms/­itkAnisotropicFourthOrderLevelSetImageFilter.h
>  >> ./­Code/­Algorithms/­itkAnisotropicFourthOrderLevelSetImageFilter.txx
>  >> ./­Code/­Algorithms/­itkIsotropicFourthOrderLevelSetImageFilter.h
>  >> ./­Code/­Algorithms/­itkIsotropicFourthOrderLevelSetImageFilter.txx
>  >> ./­Code/­Algorithms/­itkUnsharpMaskLevelSetImageFilter.txx
>  >>
>
./­Code/­Algorithms/­itkCorrelationCoefficientHistogramImageToImageMetric.h
>  >>
>  >>
>
./­Code/­Algorithms/­itkCorrelationCoefficientHistogramImageToImageMetric.tx
x
>
>  >>
>  >> ./­Code/­Algorithms/­itkFEMFiniteDifferenceFunctionLoad.h
>  >> ./­Code/­Algorithms/­itkFEMFiniteDifferenceFunctionLoad.txx
>  >> ./­Code/­Algorithms/­itkHistogramImageToImageMetric.h
>  >> ./­Code/­Algorithms/­itkHistogramImageToImageMetric.txx
>  >> ./­Code/­Algorithms/­itkMIRegistrationFunction.h
>  >> ./­Code/­Algorithms/­itkMIRegistrationFunction.txx
>  >> ./­Code/­Algorithms/­itkMeanSquareRegistrationFunction.h
>  >> ./­Code/­Algorithms/­itkMeanSquareRegistrationFunction.txx
>  >> ./­Code/­Algorithms/­itkMeanSquaresHistogramImageToImageMetric.h
>  >> ./­Code/­Algorithms/­itkMeanSquaresHistogramImageToImageMetric.txx
>  >> ./­Code/­Algorithms/­itkNCCRegistrationFunction.h
>  >> ./­Code/­Algorithms/­itkMutualInformationHistogramImageToImageMetric.h
>  >>
./­Code/­Algorithms/­itkMutualInformationHistogramImageToImageMetric.txx
>  >> ./­Code/­Algorithms/­itkNCCRegistrationFunction.txx
>  >>
>
./­Code/­Algorithms/­itkNormalizedMutualInformationHistogramImageToImageMetr
ic.h
>
>  >>
>  >>
>
./­Code/­Algorithms/­itkNormalizedMutualInformationHistogramImageToImageMetr
ic.txx
>
>  >>
>  >> ./­Code/­BasicFilters/­itkNonThreadedShrinkImageFilter.h
>  >> ./­Code/­BasicFilters/­itkNonThreadedShrinkImageFilter.txx
>  >> ./­Code/­BasicFilters/­itkParametricSpaceToImageSpaceMeshFilter.h
>  >> ./­Code/­BasicFilters/­itkParametricSpaceToImageSpaceMeshFilter.txx
>  >> ./­Code/­BasicFilters/­itkChainCodeToFourierSeriesPathFilter.h
>  >> ./­Code/­BasicFilters/­itkChainCodeToFourierSeriesPathFilter.txx
>  >> ./­Code/­BasicFilters/­itkGetAverageSliceImageFilter.h
>  >> ./­Code/­BasicFilters/­itkGetAverageSliceImageFilter.txx
>  >> ./­Code/­BasicFilters/­itkLazyEdgeDetectionImageFilter3D.h
>  >> ./­Code/­BasicFilters/­itkLazyEdgeDetectionImageFilter3D.txx
>  >> ./­Code/­BasicFilters/­itkMidsagittalPlaneExtractionImageFilter.h
>  >> ./­Code/­BasicFilters/­itkMidsagittalPlaneExtractionImageFilter.txx
>  >> ./­Code/­BasicFilters/­itkParallelSparseFieldLevelSetImageFilter.h
>  >> ./­Code/­BasicFilters/­itkParallelSparseFieldLevelSetImageFilter.txx
>  >> ./­Code/­Common/­itkBloxBoundaryPointPixel.h
>  >> ./­Code/­Common/­itkBloxItem.h
>  >> ./­Code/­Common/­itkConditionalIterator.h
>  >> ./­Code/­Common/­itkConditionalIterator.txx
>  >> ./­Code/­Common/­itkDefaultDynamicMeshTraits.h
>  >> ./­Code/­Common/­itkDefaultImageTraits.h
>  >> ./­Code/­Common/­itkDefaultStaticMeshTraits.h
>  >> ./­Code/­Common/­itkFiniteDifferenceFunction.txx
>  >> ./­Code/­Common/­itkFloodFilledFunctionConditionalIterator.h
>  >> ./­Code/­Common/­itkFloodFilledFunctionConditionalIterator.txx
>  >> ./­Code/­Common/­itkFloodFilledImageFunctionConditionalIterator.txx
>  >> ./­Code/­Common/­itkFloodFilledSpatialFunctionConditionalIterator.txx
>  >> ./­Code/­Common/­itkHexahedronCellTopology.h
>  >> ./­Code/­Common/­itkImageContainerInterface.h
>  >> ./­Code/­Common/­itkImageIteratorWithIndex.h
>  >> ./­Code/­Common/­itkImageIteratorWithIndex.txx
>  >> ./­Code/­Common/­itkImageRandomIteratorWithIndex.h
>  >> ./­Code/­Common/­itkImageReverseIterator.h
>  >> ./­Code/­Common/­itkImageReverseIterator.txx
>  >> ./­Code/­Common/­itkIndexedContainerInterface.h
>  >> ./­Code/­Common/­itkIntTypes.h
>  >> ./­Code/­Common/­itkMeshRegion.cxx
>  >> ./­Code/­Common/­itkMeshRegion.h
>  >> ./­Code/­Common/­itkNeighborhoodAlgorithm.h
>  >> ./­Code/­Common/­itkNumericTraits.cxx
>  >> ./­Code/­Common/­itkPixelAccessor.h
>  >> ./­Code/­Common/­itkPixelTraits.h
>  >> ./­Code/­Common/­itkQuadraticTriangleCellTopology.h
>  >> ./­Code/­Common/­itkQuadrilateralCellTopology.h
>  >> ./­Code/­Common/­itkScalarVector.h
>  >> ./­Code/­Common/­itkSimpleFastMutexLock.h
>  >> ./­Code/­Common/­itkTetrahedronCellTopology.h
>  >> ./­Code/­Common/­itkTimeProbe.h
>  >> ./­Code/­Common/­itkTimeProbesCollectorBase.h
>  >>
>  >>
>  >> _______________________________________________
>  >> Insight-developers mailing list
>  >> Insight-developers at itk . org
>  >> http://www . itk . org/mailman/listinfo/insight-developers
>  >
>  >
>  >
>  >
>  >
>  >
>
>
>
>
> _______________________________________________
> Insight-developers mailing list
> Insight-developers at itk . org
> http://www . itk . org/mailman/listinfo/insight-developers
>