20 CPPUNIT_TEST_SUITE(mitkPhotoacousticMotionCorrectionFilterTestSuite);
35 CPPUNIT_TEST_SUITE_END();
44 void setUp()
override {
52 unsigned int * dimensions =
new unsigned int[3] {2, 2, 2};
53 unsigned int * dimensions2 =
new unsigned int[3] {2, 2, 1};
54 unsigned int * dim2 =
new unsigned int[4] {2, 2, 2, 2};
56 float * data =
new float[8] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
57 float * data4d =
new float[16];
58 data2d =
new float[4] {500.0, -500.5, 1000.0, 0.5};
59 image->Initialize(pt, 3, dimensions);
60 image->SetVolume(data);
61 image4d->Initialize(pt, 4, dim2);
62 image4d->SetVolume(data4d);
63 image2d->Initialize(pt, 2, dimensions);
64 image2d->SetVolume(data2d);
65 image3d1slice->Initialize(pt, 3, dimensions2);
66 image3d1slice->SetVolume(data);
74 void tearDown()
override {
78 void testSettingFirstInput() {
79 filter->SetInput(0, image);
81 CPPUNIT_ASSERT_EQUAL(image, out);
84 void testSettingSecondInput() {
85 filter->SetInput(1, image);
87 CPPUNIT_ASSERT_EQUAL(image, out);
95 void testGetFirstEmptyOutput() {
98 CPPUNIT_ASSERT_EQUAL(dim, out->GetDimension());
101 void testGetSecondEmptyOutput() {
103 unsigned int dim = 0;
104 CPPUNIT_ASSERT_EQUAL(dim, out->GetDimension());
107 void testSameInOutDimensions() {
108 filter->SetInput(0, image);
109 filter->SetInput(1, image);
112 CPPUNIT_ASSERT_EQUAL(image->GetDimension(), out->GetDimension());
113 out = filter->GetOutput(1);
114 CPPUNIT_ASSERT_EQUAL(image->GetDimension(), out->GetDimension());
117 void testNo3DError() {
118 filter->SetInput(0, image4d);
119 filter->SetInput(1, image4d);
120 CPPUNIT_ASSERT_THROW(filter->Update(), std::invalid_argument);
127 void testSameInputDimension1() {
128 filter->SetInput(0, image);
129 filter->SetInput(1, image4d);
130 CPPUNIT_ASSERT_THROW(filter->Update(), std::invalid_argument);
134 void testSameInputDimension2() {
135 filter->SetInput(0, image2d);
136 filter->SetInput(1, image);
137 CPPUNIT_ASSERT_THROW(filter->Update(), std::invalid_argument);
141 void testNullPtr1() {
142 filter->SetInput(0,
nullptr);
143 filter->SetInput(1, image);
144 CPPUNIT_ASSERT_THROW(filter->Update(), itk::ExceptionObject);
148 void testNullPtr2() {
149 filter->SetInput(0, image);
150 filter->SetInput(1,
nullptr);
151 CPPUNIT_ASSERT_THROW(filter->Update(), std::invalid_argument);
154 void testNullPtr3() {
155 filter->SetInput(0,
nullptr);
156 filter->SetInput(1,
nullptr);
157 CPPUNIT_ASSERT_THROW(filter->Update(), itk::ExceptionObject);
160 void testSameInputDimensions() {
161 filter->SetInput(0, image3d1slice);
162 filter->SetInput(1, image);
163 CPPUNIT_ASSERT_THROW(filter->Update(), std::invalid_argument);
166 void testStaticSliceCorrection() {
167 image->SetSlice(data2d, 0);
168 image->SetSlice(data2d, 1);
169 filter->SetInput(0, image);
170 filter->SetInput(1, image);
MITK_TEST_SUITE_REGISTRATION(mitkImageToItk)
#define MITK_TEST(TESTMETHOD)
Adds a test to the current test suite.
Test fixture for parameterized tests.
#define MITK_ASSERT_EQUAL(EXPECTED, ACTUAL, MSG)
Testing macro to test if two objects are equal.
mitk::Image::Pointer image
Class for defining the data type of pixels.