#include "mitkExtractImageFilter.h"#include "mitkCoreObjectFactory.h"#include "mitkDataNodeFactory.h"#include "mitkCompareImageSliceTestHelper.h"#include "mitkImageTimeSelector.h"Go to the source code of this file.
Classes | |
| class | mitkExtractImageFilterTestClass |
Functions | |
| int | mitkExtractImageFilterTest (int argc, char *argv[]) |
| ctest entry point | |
| int mitkExtractImageFilterTest | ( | int | argc, |
| char * | argv[] | ||
| ) |
ctest entry point
Definition at line 362 of file mitkExtractImageFilterTest.cpp.
References EXIT_FAILURE, EXIT_SUCCESS, mitk::ExtractImageFilter::New(), mitk::DataNodeFactory::New(), mitkExtractImageFilterTestClass::Test2D(), mitkExtractImageFilterTestClass::Test3D(), and mitkExtractImageFilterTestClass::Test4D().
{
// one big variable to tell if anything went wrong
unsigned int numberFailed(0);
// need one parameter (image filename)
if(argc==0)
{
std::cerr<<"No file specified [FAILED]"<<std::endl;
return EXIT_FAILURE;
}
// load the image
mitk::Image::Pointer image = NULL;
mitk::DataNodeFactory::Pointer factory = mitk::DataNodeFactory::New();
try
{
std::cout << "Testing with parameter '" << argv[1] << "'" << std::endl;
factory->SetFileName( argv[1] );
factory->Update();
if(factory->GetNumberOfOutputs()<1)
{
std::cerr<<"File could not be loaded [FAILED]"<<std::endl;
return EXIT_FAILURE;
}
mitk::DataNode::Pointer node = factory->GetOutput( 0 );
image = dynamic_cast<mitk::Image*>(node->GetData());
if(image.IsNull())
{
std::cout<<"File not an image - test will not be applied [PASSED]"<<std::endl;
std::cout<<"[TEST DONE]"<<std::endl;
return EXIT_SUCCESS;
}
}
catch ( itk::ExceptionObject & ex )
{
++numberFailed;
std::cerr << "Exception: " << ex << "[FAILED]" << std::endl;
return EXIT_FAILURE;
}
std::cout << " (II) Could load image." << std::endl;
std::cout << "Testing filter instantiation" << std::endl;
// instantiation
mitk::ExtractImageFilter::Pointer filter = mitk::ExtractImageFilter::New();
if (filter.IsNotNull())
{
std::cout << " (II) Instantiation works." << std::endl;
}
else
{
++numberFailed;
std::cout << "Test failed, and it's the ugliest one!" << std::endl;
return EXIT_FAILURE;
}
// some real work
if ( image->GetDimension() == 2 )
{
mitkExtractImageFilterTestClass::Test2D( filter, image, numberFailed );
}
else if ( image->GetDimension() == 3 )
{
mitkExtractImageFilterTestClass::Test3D( filter, image, numberFailed );
}
else if ( image->GetDimension() == 4 )
{
mitkExtractImageFilterTestClass::Test4D( filter, image, numberFailed );
}
std::cout << "Testing filter destruction" << std::endl;
// freeing
filter = NULL;
std::cout << " (II) Freeing works." << std::endl;
if (numberFailed > 0)
{
std::cerr << numberFailed << " tests failed." << std::endl;
return EXIT_FAILURE;
}
else
{
std::cout << "PASSED all tests." << std::endl;
return EXIT_SUCCESS;
}
}
1.7.2