itk_module_test() set(ITKIOGDCMTests itkGDCMImageIOTest.cxx itkGDCMImageIOTest2.cxx itkGDCMImageIONoCrashTest.cxx itkGDCMImageReadSeriesWriteTest.cxx itkGDCMImageReadWriteTest.cxx itkGDCMSeriesReadImageWriteTest.cxx itkGDCMSeriesMissingDicomTagTest.cxx itkGDCMSeriesStreamReadImageWriteTest.cxx itkGDCMImagePositionPatientTest.cxx itkGDCMImageIOOrthoDirTest.cxx itkGDCMImageOrientationPatientTest.cxx itkGDCMLoadImageSpacingTest.cxx itkGDCMLegacyMultiFrameTest.cxx itkGDCMImageIONoPreambleTest.cxx itkGDCMImageIO32bitsStoredTest.cxx) createtestdriver(ITKIOGDCM "${ITKIOGDCM-Test_LIBRARIES}" "${ITKIOGDCMTests}") itk_add_test( NAME itkGDCMImageIOTest1 COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/itkGDCMImageIOTestBaseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest.mha --compare DATA{Baseline/itkGDCMImageIOTestRescaledBaseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTestRescaled.mha itkGDCMImageIOTest DATA{${ITK_DATA_ROOT}/Input/dicom-sc_cs-1.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest.mha ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTestRescaled.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTestRescaled.mha) itk_add_test( NAME itkGDCMImageIOTest2 COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/itkGDCMImageIOTest2Baseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest2.mha --compare DATA{Baseline/itkGDCMImageIOTest2RescaledBaseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest2Rescaled.mha itkGDCMImageIOTest DATA{${ITK_DATA_ROOT}/Input/itkGDCMImageIOTest.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest2.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest2.mha ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest2Rescaled.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest2Rescaled.mha) itk_add_test( NAME itkGDCMImageIOTest3 COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/itkGDCMImageIOTest3Baseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest3.mha --compare DATA{Baseline/itkGDCMImageIOTest3RescaledBaseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest3Rescaled.mha itkGDCMImageIOTest DATA{${ITK_DATA_ROOT}/Input/itkGDCMImageIOTest3.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest3.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest3.mha ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest3Rescaled.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest3Rescaled.mha) itk_add_test( NAME itkGDCMImageIOTest4 COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/itkGDCMImageIOTest4Baseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest4.mha --compare DATA{Baseline/itkGDCMImageIOTest4RescaledBaseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest4Rescaled.mha itkGDCMImageIOTest DATA{${ITK_DATA_ROOT}/Input/012345.002.050} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest4.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest4.mha ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest4Rescaled.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest4Rescaled.mha) itk_add_test( NAME itkGDCMImageIOSecondaryCaptureSpacingTest COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/itkGDCMImageIOSecondaryCaptureSpacingTestBaseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOSecondaryCaptureSpacingTest.mha itkGDCMImageIOTest DATA{Input/image_slice0.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOSecondaryCaptureSpacingTest.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOSecondaryCaptureSpacingTest.mha ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOSecondaryCaptureSpacingTestRescaled.dcm ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOSecondaryCaptureSpacingTestRescaled.mha) itk_add_test( NAME itkGDCMImageIOTest5 COMMAND ITKIOGDCMTestDriver itkGDCMImageIOTest2 DATA{${ITK_DATA_ROOT}/Input/HeadMRVolume.mhd,HeadMRVolume.raw} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest5) itk_add_test( NAME itkGDCMSeriesReadImageWriteTest COMMAND ITKIOGDCMTestDriver itkGDCMSeriesReadImageWriteTest DATA{${ITK_DATA_ROOT}/Input/DicomSeries/,REGEX:Image[0-9]+.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMSeriesReadImageWriteTest.vtk ${ITK_TEST_OUTPUT_DIR}) set_property( TEST itkGDCMSeriesReadImageWriteTest APPEND PROPERTY DEPENDS ITKData) itk_add_test( NAME itkGDCMSeriesStreamReadImageWriteTest1 COMMAND ITKIOGDCMTestDriver itkGDCMSeriesStreamReadImageWriteTest DATA{${ITK_DATA_ROOT}/Input/DicomSeries/,REGEX:Image[0-9]+.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMSeriesStreamReadImageWriteTest1.mhd 0.859375 0.85939 1.60016 0 1 0 0 0) set_property( TEST itkGDCMSeriesStreamReadImageWriteTest1 APPEND PROPERTY DEPENDS ITKData) itk_add_test( NAME itkGDCMSeriesStreamReadImageWriteTest2 COMMAND ITKIOGDCMTestDriver itkGDCMSeriesStreamReadImageWriteTest DATA{${ITK_DATA_ROOT}/Input/DicomSeries/,REGEX:Image[0-9]+.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMSeriesStreamReadImageWriteTest2.mhd 0.859375 0.85939 1.60016 0 1 0 0 1) set_property( TEST itkGDCMSeriesStreamReadImageWriteTest2 APPEND PROPERTY DEPENDS ITKData) itk_add_test( NAME itkGDCMImagePositionPatientTest COMMAND ITKIOGDCMTestDriver itkGDCMImagePositionPatientTest ${ITK_TEST_OUTPUT_DIR}) itk_add_test( NAME itkGDCMImageReadSeriesWriteTest COMMAND ITKIOGDCMTestDriver --compare DATA{${ITK_DATA_ROOT}/Input/HeadMRVolume.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadSeriesWriteTest.mha itkGDCMImageReadSeriesWriteTest DATA{${ITK_DATA_ROOT}/Input/HeadMRVolume.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadSeriesWriteTest ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadSeriesWriteTest.mha) itk_add_test( NAME itkGDCMSeriesMissingDicomTagTest COMMAND ITKIOGDCMTestDriver itkGDCMSeriesMissingDicomTagTest DATA{${ITK_DATA_ROOT}/Input/DicomSeries2/,Image0075.dcm,Image0076-missingTag.dcm}) itk_add_test( NAME itkGDCMImageIOOrthoDirTest COMMAND ITKIOGDCMTestDriver itkGDCMImageIOOrthoDirTest DATA{${ITK_DATA_ROOT}/Input/OrthogonalDirectionsTest.dcm}) itk_add_test( NAME itkGDCMImageOrientationPatientTest COMMAND ITKIOGDCMTestDriver itkGDCMImageOrientationPatientTest ${ITK_TEST_OUTPUT_DIR}) set_property( TEST itkGDCMSeriesMissingDicomTagTest APPEND PROPERTY DEPENDS ITKData) itk_add_test( NAME itkGDCMImageIONoCrashTest COMMAND ITKIOGDCMTestDriver itkGDCMImageIONoCrashTest DATA{${ITK_DATA_ROOT}/Input/OT-PAL-8-face.dcm}) itk_add_test( NAME itkGDCMLoadImageSpacingTest COMMAND ITKIOGDCMTestDriver itkGDCMLoadImageSpacingTest DATA{Input/gdcmSpacingTest.dcm} 0.178038 0.174924) itk_add_test( NAME itkGDCMLoadImageNoSpacingTest COMMAND ITKIOGDCMTestDriver itkGDCMLoadImageSpacingTest DATA{Input/gdcmNoSpacingTest.dcm} 1.0 1.0) itk_add_test( NAME itkGDCMLegacyMultiFrameTest COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/itkGDCMLegacyMultiFrameTest.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMLegacyMultiFrameTest.mha itkGDCMLegacyMultiFrameTest # This dataset was derived from # https://www.dropbox.com/s/8m7ugu4cmw83fvd/dicoms-anon.zip?dl=0 # per the discussion here # https://discourse.slicer.org/t/dicom-multiframe-support/4806/9 DATA{Input/LegacyMultiFrame.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMLegacyMultiFrameTest.mha) itk_add_test( NAME itkGDCMImageIONoPreambleTest COMMAND ITKIOGDCMTestDriver itkGDCMImageIONoPreambleTest DATA{Input/NoPreambleDicomTest.dcm}) # Re-use the test driver to ensure that CanReadFile returns true for a file # with a preamble. itk_add_test( NAME itkGDCMImageIOPreambleCanReadTest COMMAND ITKIOGDCMTestDriver itkGDCMImageIONoPreambleTest DATA{Input/preamble.dcm}) itk_add_test( NAME itkGDCMImageIO32bitsStoredTest COMMAND ITKIOGDCMTestDriver itkGDCMImageIO32bitsStoredTest DATA{Input/image32bitsStoredTest.dcm}) itk_add_test( NAME itkGDCMImageReadWriteTest_RGB COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/itkGDCMImageReadWriteTest_RGB.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadWriteTest_RGB.mha itkGDCMImageReadWriteTest DATA{${ITK_DATA_ROOT}/Input/RGBDicomTest.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadWriteTest_RGB.mha rgb) itk_add_test( NAME itkGDCMImageReadWriteTest_SC_RGB COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/itkGDCMImageReadWriteTest_SC_RGB.nrrd} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadWriteTest_SC_RGB.nrrd itkGDCMImageReadWriteTest DATA{Input/visible-male-rgb-slice.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadWriteTest_SC_RGB.nrrd rgb) itk_add_test( NAME itkGDCM_ComplianceTestRGB_JPEG2000ICT COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/US1_J2KI.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCM_ComplianceTestRGB_JPEG2000ICT.mha itkGDCMImageReadWriteTest DATA{Input/US1_J2KI.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCM_ComplianceTestRGB_JPEG2000ICT.mha rgb) itk_add_test( NAME itkGDCM_ComplianceTestRGB_JPEG2000RCT COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/US1_J2KR.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCM_ComplianceTestRGB_JPEG2000RCT.mha itkGDCMImageReadWriteTest DATA{Input/US1_J2KR.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCM_ComplianceTestRGB_JPEG2000RCT.mha rgb) itk_add_test( NAME itkGDCMImageReadWriteTest_JPEGBaseline1 COMMAND ITKIOGDCMTestDriver --compareIntensityTolerance 5 --compareNumberOfPixelsTolerance 71 --compare DATA{Baseline/itkGDCMImageReadWriteTest_RGB.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadWriteTest_JPEGBaseline1.mha itkGDCMImageReadWriteTest DATA{Input/JPEGBaseline1DicomTest.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadWriteTest_JPEGBaseline1.mha rgb) itk_add_test( NAME itkGDCMImageReadWriteTest_MultiFrameMRIZSpacing COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/itkGDCMImageReadWriteTest_MultiFrameMRIZSpacingBaseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadWriteTest_MultiFrameMRIZSpacing.mha itkGDCMImageReadWriteTest DATA{Input/MultiFrameMRIZSpacing.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageReadWriteTest_MultiFrameMRIZSpacing.mha scalar) itk_add_test( NAME itkGDCMImageIOTest3_mono1 COMMAND ITKIOGDCMTestDriver --ignoreInputInformation --compare DATA{Baseline/itkGDCMImageIOTest3Baseline.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest3_mono1.mha itkGDCMImageReadWriteTest DATA{Input/itkGDCMImageIOTest3_mono1.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCMImageIOTest3_mono1.mha scalar) itk_add_test( NAME itkGDCM_ComplianceTest_singlebit COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/single-bit.mha} ${ITK_TEST_OUTPUT_DIR}/single-bit.mha itkGDCMImageReadWriteTest DATA{Input/single-bit.dcm} ${ITK_TEST_OUTPUT_DIR}/single-bit.mha scalar) itk_add_test( NAME itkGDCMImageReadWriteTest_preamble COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/preamble.mha} ${ITK_TEST_OUTPUT_DIR}/preamble.mha itkGDCMImageReadWriteTest DATA{Input/preamble.dcm} ${ITK_TEST_OUTPUT_DIR}/preamble.mha scalar) itk_add_test( NAME itkGDCMImageReadWriteTest_no_preamble COMMAND ITKIOGDCMTestDriver --compare DATA{Baseline/no_preamble.mha} ${ITK_TEST_OUTPUT_DIR}/no_preamble.mha itkGDCMImageReadWriteTest DATA{Input/no_preamble.dcm} ${ITK_TEST_OUTPUT_DIR}/no_preamble.mha scalar) function(AddComplianceTest fileName) itk_add_test( NAME itkGDCM_ComplianceTestRGB_${fileName} COMMAND ITKIOGDCMTestDriver --compareIntensityTolerance 3 --compareCoordinateTolerance 0.001 --compare DATA{Baseline/Lily.mha} ${ITK_TEST_OUTPUT_DIR}/itkGDCM_ComplianceTestRGB_${fileName}.mha itkGDCMImageReadWriteTest DATA{Input/Lily/${fileName}.dcm} ${ITK_TEST_OUTPUT_DIR}/itkGDCM_ComplianceTestRGB_${fileName}.mha rgb) endfunction() addcompliancetest(JPEG2000-YBR_RCT) addcompliancetest(JPEGLS-RGB) addcompliancetest(losslessJPEG-RGB) addcompliancetest(lossyJPEG-YBR_FULL_422) addcompliancetest(raw-RGB) addcompliancetest(raw-YBR_FULL) addcompliancetest(raw-YBR_FULL_422) addcompliancetest(RLE-RGB)