]> Creatis software - gdcm.git/blobdiff - Testing/CMakeLists.txt
* src/jpeg/libijg12/jdhuff12.c:
[gdcm.git] / Testing / CMakeLists.txt
index c20bc31eb433c769de54f77b8677e66aa5ba00fb..43b987ad651a0d26366cad8b0d39843fffd662ab 100644 (file)
@@ -9,20 +9,16 @@ SET(GDCM_TESTS ${CXX_TEST_PATH}/gdcmTests)
 # They usally return if no argument is given
 SET(TEST_SOURCES
   TestBug.cxx
-  TestDcm2Acr.cxx
   TestHash.cxx
-  TestWrite.cxx
-  TestReadWriteReadCompare.cxx
-  TestWriteSimple.cxx
 )
 
 # add tests that require data
 IF (GDCM_DATA_ROOT)
   SET(TEST_SOURCES ${TEST_SOURCES}     
-    #PrintHeader.cxx       #require test.acr
-    PrintAllDocument.cxx     #require test.acr
+    TestReadWriteReadCompare.cxx     # includes generated gdcmDataImages.h 
+    PrintAllDocument.cxx             # includes generated gdcmDataImages.h
+    TestAllReadCompareDicom.cxx      # includes generated gdcmDataImages.h
     PrintDicomDir.cxx
-    TestFindTags.cxx
     TestChangeHeader.cxx
     TestDicomDir.cxx      #require DICOMDIR
     BuildUpDicomDir.cxx
@@ -106,13 +102,26 @@ ENDIF(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 1.9)
 # Black list of images known to break lots of readers (efilm, xmedcon ...):
 SET(BLACK_LIST
   "gdcm-JPEG-LossLessThoravision.dcm" # serial killer
-  "cr172241.dcm"           #temporarily remove as it kills my gnome session (but not kde)
+  "cr172241.dcm"           #temporarily remove as it kills my gnome session
+                           # (but not kde)
   "emptyImage.dcm"         #the png looks ugly...
-  "gdcm-MR-PHILIPS-16-Multi-Seq.fixed.dcm" #weird looks exactly the same as gdcm-MR-PHILIPS-16-Multi-Seq.dcm
-  "gdcm-MR-PHILIPS-16.dcm" #png looks ugly
   "irmPhlipsNew1.dcm"      #png looks ugly
   "mriThruVPRO.dcm"        #png looks ugly
-  "US.3405.1.dcm"          #looks exactly the same as US.1.2.dcm
+  "gdcm-MR-SIEMENS-16-1.acr"   #segfaults TestReadWriteReadCompare
+  #segfaults TestReadWriteReadCompare: this image looks corrupted:
+  # - it's pixel data is 132096 bytes long
+  # - it has a size of 256x256 with 16 bytes per pixel, i.e. a size
+  #   of 256*256*2 = 131072 bytes.
+  # Since there is a missmatch, when we have the following call stack:
+  #  gdcmFile::GetImageData()
+  #     PixelData = new uint8_t[ImageDataSize];
+  #     \--->::GetImageDataIntoVector(destination, ImageDataSize)
+  #       \---> ::ReadPixelData(destination)
+  #         \---> fread(destination, Header->GetPixelAreaLength(), 1, fp);
+  # we get a segfault because :
+  #   - destination is ImageDataSize i.e. 131072 bytes long
+  #   - Header->GetPixelAreaLength() = 132096 bytes long
+  "oldACR00001.ima"
   )
 
 #   gdcm-ACR-LibIDO seems to be cut