#QUALITY by Stefan Reise
authorsr
Fri, 12 Jul 2019 14:52:10 +0200
changeset 2329 6763cf01c241
parent 2328 cfee3c8c8f98
child 2330 c7cb74c4ed7b
#QUALITY by Stefan Reise class: RegressionTests::ImageTests added: #test49_24bit #test49_32bit #test50_32_to_24
RegressionTests__ImageTests.st
--- a/RegressionTests__ImageTests.st	Tue Jul 09 18:58:45 2019 +0200
+++ b/RegressionTests__ImageTests.st	Fri Jul 12 14:52:10 2019 +0200
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "{ Package: 'stx:goodies/regression' }"
 
 "{ NameSpace: RegressionTests }"
@@ -245,6 +247,84 @@
     "Created: / 22-08-2017 / 18:57:19 / cg"
 ! !
 
+!ImageTests methodsFor:'tests - converting'!
+
+test49_24bit
+    |img24|
+
+    img24 := Depth24Image
+                 width:4
+                 height:4
+                 fromArray:#[
+                        16rFF 16r00 16r00   16rFF 16r00 16r00   16rFF 16r00 16r00   16rFF 16r00 16r00 
+                        16r00 16rFF 16r00   16r00 16rFF 16r00   16r00 16rFF 16r00   16r00 16rFF 16r00 
+                        16r00 16r00 16rFF   16r00 16r00 16rFF   16r00 16r00 16rFF   16r00 16r00 16rFF 
+                        16rFF 16rFF 16rFF   16rFF 16rFF 16rFF   16rFF 16rFF 16rFF   16rFF 16rFF 16rFF 
+                            ].
+    img24 photometric:#rgb.
+    img24 samplesPerPixel:3.
+    img24 bitsPerSample:#(8 8 8).
+
+    self assert:(img24 pixelAtX:0 y:0) = 16rFF0000.
+    self assert:(img24 colorAtX:0 y:0) = Color red.
+
+    "Created: / 12-07-2019 / 14:34:50 / Stefan Reise"
+!
+
+test49_32bit
+    |img32|
+
+    img32 := Depth32Image
+                 width:4
+                 height:4
+                 fromArray:#[
+                        16rFF 16r00 16r00 16r00  16rFF 16r00 16r00 16r00  16rFF 16r00 16r00 16r00  16rFF 16r00 16r00 16r00
+                        16r00 16rFF 16r00 16r00  16r00 16rFF 16r00 16r00  16r00 16rFF 16r00 16r00  16r00 16rFF 16r00 16r00
+                        16r00 16r00 16rFF 16r00  16r00 16r00 16rFF 16r00  16r00 16r00 16rFF 16r00  16r00 16r00 16rFF 16r00
+                        16rFF 16rFF 16rFF 16r00  16rFF 16rFF 16rFF 16r00  16rFF 16rFF 16rFF 16r00  16rFF 16rFF 16rFF 16r00
+                            ].
+    img32 photometric:#rgb.
+    img32 samplesPerPixel:4.
+    img32 bitsPerSample:#(8 8 8 8).
+
+    self assert:(img32 pixelAtX:0 y:0) = 16rFF000000.
+    self assert:(img32 colorAtX:0 y:0) = Color red.
+
+    "Created: / 12-07-2019 / 14:35:43 / Stefan Reise"
+!
+
+test50_32_to_24
+    |img32 img24|
+
+    img32 := Depth32Image
+                 width:4
+                 height:4
+                 fromArray:#[
+                        16rFF 16r00 16r00 16r00  16rFF 16r00 16r00 16r00  16rFF 16r00 16r00 16r00  16rFF 16r00 16r00 16r00
+                        16r00 16rFF 16r00 16r00  16r00 16rFF 16r00 16r00  16r00 16rFF 16r00 16r00  16r00 16rFF 16r00 16r00
+                        16r00 16r00 16rFF 16r00  16r00 16r00 16rFF 16r00  16r00 16r00 16rFF 16r00  16r00 16r00 16rFF 16r00
+                        16rFF 16rFF 16rFF 16r00  16rFF 16rFF 16rFF 16r00  16rFF 16rFF 16rFF 16r00  16rFF 16rFF 16rFF 16r00
+                            ].
+    img32 photometric:#rgb.
+    img32 samplesPerPixel:4.
+    img32 bitsPerSample:#(8 8 8 8).
+
+    self assert:(img32 pixelAtX:0 y:0) = 16rFF000000.
+    self assert:(img32 colorAtX:0 y:0) = Color red.
+
+    self assert:(img32 pixelAtX:0 y:1) = 16r00FF0000.
+    self assert:(img32 colorAtX:0 y:1) = Color green.
+
+    img24 := img32 asImageWithDepth:24.
+    self assert:(img24 pixelAtX:0 y:0) = 16rFF0000.
+    self assert:(img24 colorAtX:0 y:0) = Color red.
+
+    self assert:(img24 pixelAtX:0 y:1) = 16r00FF00.
+    self assert:(img24 colorAtX:0 y:1) = Color green.
+
+    "Created: / 12-07-2019 / 14:32:48 / Stefan Reise"
+! !
+
 !ImageTests class methodsFor:'documentation'!
 
 version