ExtractROI application testing
Currently, the ExtractROI
application is only tested in the case where the output is the same as the input, for example if its parameters are not compliant with the input image. The tests are:
-
apTvUtExtractROISizeTooBig
:sizex
is too big, -
apTvUtExtractROISizeTooBigExtent
:mode.extent.lrx
is not in the input image, -
apTvUtExtractROISizeNULL
:sizex
is 0, -
apTvUtExtractROIRightInputFile
: no parameters given, -
apTvUtExtractROIComplexInputFile
: no parameters given, complex input.
These tests are useful, but it is even more important to test the case where the application works correctly. I suggest to add the 9 following tests:
- Mode standard (test with
sizex
sizey
startx
andstarty
) - Mode Fit:
- case with a reference image
- case with a reference vector
- Mode Extent (test with
mode.extent.ulx
,mode.extent.uly
,mode.extent.lrx
andmode.extent.lry
:- case with unit =
pxl
- case with unit =
phy
- case with unit =
lonlat
- case with unit =
- Mode Radius (test with
radius.r
radius.cs
andradius.cy
:- case with center unit
pxl
and radius unitpxl
- case with center unit
phy
and radius unitphy
- case with center unit
lonlat
and radius unitpxl
Also set the channel parameter (cl
) for these tests, to also test this functionality.
- case with center unit
This is a lot of new tests, but if we choose the parameters smartly we can use only one baseline for all tests!
ExtractROI
is probably one of the most used application of the library, so I think it deserves to be tested exhaustively (radius and extent modes have been broken for a while before !537 (merged)). This feature request is not about testing the MultiChannelExtractROI
filter, but testing the code specific to the application (parameter management).