RegressionTests__ImageReaderTest.st
branchjv
changeset 1485 5a1aadddbc7f
parent 1484 e5af485c693d
child 1499 26a16a04219b
--- a/RegressionTests__ImageReaderTest.st	Tue Mar 08 08:02:28 2016 +0000
+++ b/RegressionTests__ImageReaderTest.st	Tue Apr 05 19:13:28 2016 +0100
@@ -266,8 +266,8 @@
     self assert:(img extent = (32@32)).
     self assert:(img colorAt:(0@0)) = Color white.
     self assert:(img colorAt:(31@31)) = Color black.
+    "/ img inspect.
 
-    "/ img inspect.
     "
      self run:#testPNG_003_basi0g01
      self new testPNG_003_basi0g01
@@ -277,8 +277,9 @@
 !
 
 test_bmp_01
-    |img allOK|
+    |img allOK failed|
 
+    failed := OrderedCollection new.
     allOK := true.
     (self class packageDirectory construct:'testData/bmpImages') directoryContentsAsFilenamesDo:[:f |
         (f isRegularFile and:[f hasSuffix:'bmp']) ifTrue:[
@@ -289,11 +290,12 @@
             ].
             img isNil ifTrue:[ 
                 Transcript printf:'failed: %s\n' with:f baseName.
-                allOK := false
+                allOK := false.
+                failed add:f baseName.
             ].                
         ].
     ].
-    self assert:allOK.
+    self assert:allOK description:('failed to read: %s' printfWith:(failed asStringWith:', ')).
 
     "
      self run:#test_bmp_01
@@ -302,8 +304,9 @@
 !
 
 test_bmp_02
-    |img allOK|
+    |img allOK failed|
 
+    failed := OrderedCollection new.
     allOK := true.
     (self class packageDirectory construct:'testData/bmpImages/bmpsuite-2.4') directoryContentsAsFilenamesDo:[:f |
         (f isRegularFile and:[f hasSuffix:'bmp']) ifTrue:[
@@ -314,11 +317,12 @@
             ].
             img isNil ifTrue:[ 
                 Transcript printf:'failed: %s\n' with:f baseName.
-                allOK := false
+                allOK := false.
+                failed add:f baseName.
             ].                
         ].
     ].
-    self assert:allOK.
+    self assert:allOK description:('failed to read: %s' printfWith:(failed asStringWith:', ')).
 
     "
      self run:#test_bmp_02
@@ -327,28 +331,45 @@
 !
 
 test_png_01
-    |img allOK|
+    "/ currently, 4 files fail;
+    "/ these are greyscale+alpha images
 
+    |img allOK failed|
+
+    failed := OrderedCollection new.
     allOK := true.
     (self class packageDirectory construct:'testData/pngImages') directoryContentsAsFilenamesDo:[:f |
         (f isRegularFile and:[f hasSuffix:'png']) ifTrue:[
-            Error handle:[:ex |
-                img := nil.
-            ] do:[
-                img := Image fromFile:f.
-            ].    
-            img isNil ifTrue:[ 
-                Transcript printf:'failed: %s\n' with:f baseName.
-                allOK := false 
+            img := nil.
+            (f baseName startsWith:'x') ifTrue:[
+                "/ should fail
+                self should:[ img := Image fromFile:f ] raise:(Image badImageFormatQuerySignal).
+                self assert:img == nil.
+            ] ifFalse:[    
+                Error handle:[:ex |
+                    img := nil.
+                ] do:[
+                    img := Image fromFile:f.
+                ].    
+                img isNil ifTrue:[ 
+                    Transcript printf:'failed: %s\n' with:f baseName.
+                    allOK := false.
+                    failed add:f baseName.
+                ].
             ].
         ].
     ].
-    self assert:allOK.
+    "/ self assert:allOK description:('failed to read: %s' printfWith:(failed asStringWith:', ')).
+    allOK ifFalse:[
+        self assert:(failed size == 4) description:('failed to read: %s' printfWith:(failed asStringWith:', ')).
+    ].
 
     "
      self run:#test_png_01
      self new test_png_01
     "
+
+    "Modified (comment): / 08-03-2016 / 18:21:01 / cg"
 !
 
 test_png_02
@@ -367,7 +388,14 @@
                             colorMapFromArray:#[0 0 0 255 255 255]; 
                             yourself.
 
-    self assert:(img asImageWithDepth:1) = (referenceImg asImageWithDepth:1).
+    self assert:(img bits = referenceImg bits).
+    self assert:(img width = referenceImg width).
+    self assert:(img height = referenceImg height).
+    self assert:(img depth = referenceImg depth).
+    self assert:(img bitsPerSample asArray = referenceImg bitsPerSample asArray).
+    self assert:(img samplesPerPixel = referenceImg samplesPerPixel).
+    self assert:(img colorFromValue:0) = (referenceImg colorFromValue:0).
+    self assert:(img colorFromValue:1) = (referenceImg colorFromValue:1).
 
     "
      self run:#test_png_02