RegressionTests__IntegerTest.st
changeset 1319 df8bc748b1f4
parent 1318 8c891b59469c
child 1320 c591f48b955d
--- a/RegressionTests__IntegerTest.st	Fri Feb 26 16:30:46 2016 +0100
+++ b/RegressionTests__IntegerTest.st	Fri Feb 26 19:47:53 2016 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "{ Package: 'exept:regression' }"
 
 "{ NameSpace: RegressionTests }"
@@ -2085,25 +2087,56 @@
      self assert:(16rFFEEDDCCBBAA998877665544332211 bitOr:16rFFFFFFFFFFFFFFFFFFFFFFFF) hexPrintString = 'FFEEDDFFFFFFFFFFFFFFFFFFFFFFFF'.
 
     Time millisecondsToRun:[
-	1000000 timesRepeat:[
-	    (16rFFEEDDCCBBAA998877665544332211 bitAnd:16rFFFFFFFFFFFFFFFFFFFFFFFF)
-	]
+        1000000 timesRepeat:[
+            (16rFFEEDDCCBBAA998877665544332211 bitAnd:16rFFFFFFFFFFFFFFFFFFFFFFFF)
+        ]
     ].
     "/ bitAnd inherited via Integer:  1638 1575 1576
     "/ bitAnd tuned in largeInteger:  172 171 172
 
     Time millisecondsToRun:[
-	1000000 timesRepeat:[
-	    (16rFFEEDDCCBBAA998877665544332211 bitOr:16rFFFFFFFFFFFFFFFFFFFFFFFF)
-	]
+        1000000 timesRepeat:[
+            (16rFFEEDDCCBBAA998877665544332211 bitOr:16rFFFFFFFFFFFFFFFFFFFFFFFF)
+        ]
     ].
     "/ bitOr inherited via Integer:  1903 1856 1856
 
+    self assert:( 16r800008 signExtendedFromBit:4 ) = -8. 
+    self assert:( 16r7FFF07 signExtendedFromBit:4 ) = 7.     
+    self assert:( 16r7FFF0F signExtendedFromBit:4 ) = -1.    
+
+    self assert:( 16rFFFFFF signExtendedFromBit:8 ) = -1.   
+    self assert:( 16rFFFF7F signExtendedFromBit:8 ) = 16r7F.   
+
+    self assert:( 16rFFFFFF signExtendedByteValue ) = -1.   
+    self assert:( 16rFFFF7F signExtendedByteValue ) = 16r7F.   
+
+    self assert:( 16rFFFF signExtendedShortValue ) = -1.   
+    self assert:( 16r7FFF signExtendedShortValue ) = 16r7FFF.   
+    self assert:( 16rFFFFFFFF signExtendedShortValue ) = -1.   
+    self assert:( 16rFFFF7FFF signExtendedShortValue ) = 16r7FFF.   
+    self assert:( 16rFFFFFFFFFF signExtendedShortValue ) = -1.   
+    self assert:( 16rFFFFFF7FFF signExtendedShortValue ) = 16r7FFF.   
+    self assert:( 16rFFFFFFFFFFFF signExtendedShortValue ) = -1.   
+    self assert:( 16rFFFFFFFF7FFF signExtendedShortValue ) = 16r7FFF.   
+
+    self assert:( 16rFFFFFFFF signExtendedLongValue ) = -1.   
+    self assert:( 16r7FFFFFFF signExtendedLongValue ) = 16r7FFFFFFF.   
+    self assert:( 16rFFFFFFFFFFFF signExtendedLongValue ) = -1.   
+    self assert:( 16rFFFF7FFFFFFF signExtendedLongValue ) = 16r7FFFFFFF.   
+    self assert:( 16rFFFFFFFFFFFFFFFF signExtendedLongValue ) = -1.   
+    self assert:( 16rFFFFFFFF7FFFFFFF signExtendedLongValue ) = 16r7FFFFFFF.   
+
+    self assert:( 16rFFFFFFFFFFFFFFFF signExtendedLongLongValue ) = -1.   
+    self assert:( 16r7FFFFFFFFFFFFFFF signExtendedLongLongValue ) = 16r7FFFFFFFFFFFFFFF.   
+    self assert:( 16rFFFFFFFFFFFFFFFFFFFF signExtendedLongLongValue ) = -1.   
+    self assert:( 16rFFFF7FFFFFFFFFFFFFFF signExtendedLongLongValue ) = 16r7FFFFFFFFFFFFFFF.   
+
     "
      self basicNew testLargeBitOperations
     "
 
-    "Modified: / 4.6.1999 / 15:26:55 / cg"
+    "Modified: / 26-02-2016 / 19:47:25 / cg"
 !
 
 testLargeCompare