RegressionTests__SmallIntegerTest.st
author Claus Gittinger <cg@exept.de>
Mon, 02 May 2016 17:16:03 +0200
changeset 1413 c9ef56f181ff
parent 1347 e965d238a810
child 1447 2351db93aa5b
child 1499 26a16a04219b
permissions -rw-r--r--
#OTHER by cg categorychange
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
310
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'exept:regression' }"
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
"{ NameSpace: RegressionTests }"
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
TestCase subclass:#SmallIntegerTest
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	instanceVariableNames:''
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	classVariableNames:''
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
	poolDictionaries:''
1074
905aea054cf4 category
Claus Gittinger <cg@exept.de>
parents: 619
diff changeset
     9
	category:'tests-Regression-Numbers'
310
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
!
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
619
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
    13
!SmallIntegerTest class methodsFor:'others'!
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
    14
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
    15
version_CVS
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
    16
    ^ '$Header$'
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
    17
! !
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
    18
310
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
!SmallIntegerTest methodsFor:'tests-arithmetic'!
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
1347
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    21
testBitShift
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    22
    #( 
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    23
        (1 1 2)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    24
        (1 2 4)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    25
        (1 3 8)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    26
        (1 7 16r080)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    27
        (1 8 16r100)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    28
        (1 15 16r08000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    29
        (1 16 16r10000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    30
        (1 17 16r20000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    31
        (1 30 16r040000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    32
        (1 31 16r080000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    33
        (1 32 16r100000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    34
        (1 33 16r200000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    35
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    36
        (1 62 16r04000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    37
        (1 63 16r08000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    38
        (1 64 16r10000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    39
        (1 65 16r20000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    40
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    41
        (1 126 16r040000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    42
        (1 127 16r080000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    43
        (1 128 16r100000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    44
        (1 129 16r200000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    45
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    46
        (16r10 1 16r20)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    47
        (16r10 2 16r40)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    48
        (16r10 3 16r80)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    49
        (16r10 7 16r0800)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    50
        (16r10 8 16r1000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    51
        (16r10 15 16r080000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    52
        (16r10 16 16r100000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    53
        (16r10 17 16r200000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    54
        (16r10 30 16r0400000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    55
        (16r10 31 16r0800000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    56
        (16r10 32 16r1000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    57
        (16r10 33 16r2000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    58
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    59
        (16r10 62 16r040000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    60
        (16r10 63 16r080000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    61
        (16r10 64 16r100000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    62
        (16r10 65 16r200000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    63
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    64
        (16r10 126 16r0400000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    65
        (16r10 127 16r0800000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    66
        (16r10 128 16r1000000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    67
        (16r10 129 16r2000000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    68
    ) triplesDo:[:val :cnt :expected |
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    69
        |rslt1 rslt2|
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    70
        
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    71
        rslt1 := val bitShift:cnt.
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    72
        self assert:(rslt1 = expected).
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    73
        expected class == SmallInteger ifTrue:[
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    74
            self assert:(rslt1 == expected)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    75
        ].    
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    76
        rslt2 := rslt1 bitShift:cnt negated.
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    77
        self assert:(rslt2 = val).
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    78
        val class == SmallInteger ifTrue:[
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    79
            self assert:(rslt2 == val)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    80
        ].    
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    81
    ].
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    82
!
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    83
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    84
testBitShiftNegative
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    85
    #( 
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    86
        (-1 1 -2)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    87
        (-1 2 -4)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    88
        (-1 3 -8)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    89
        (-1 7 -16r080)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    90
        (-1 8 -16r100)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    91
        (-1 15 -16r08000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    92
        (-1 16 -16r10000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    93
        (-1 17 -16r20000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    94
        (-1 30 -16r040000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    95
        (-1 31 -16r080000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    96
        (-1 32 -16r100000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    97
        (-1 33 -16r200000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    98
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
    99
        (-1 62 -16r04000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   100
        (-1 63 -16r08000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   101
        (-1 64 -16r10000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   102
        (-1 65 -16r20000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   103
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   104
        (-1 126 -16r040000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   105
        (-1 127 -16r080000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   106
        (-1 128 -16r100000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   107
        (-1 129 -16r200000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   108
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   109
        (-16r10 1 -16r20)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   110
        (-16r10 2 -16r40)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   111
        (-16r10 3 -16r80)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   112
        (-16r10 7 -16r0800)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   113
        (-16r10 8 -16r1000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   114
        (-16r10 15 -16r080000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   115
        (-16r10 16 -16r100000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   116
        (-16r10 17 -16r200000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   117
        (-16r10 30 -16r0400000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   118
        (-16r10 31 -16r0800000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   119
        (-16r10 32 -16r1000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   120
        (-16r10 33 -16r2000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   121
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   122
        (-16r10 62 -16r040000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   123
        (-16r10 63 -16r080000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   124
        (-16r10 64 -16r100000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   125
        (-16r10 65 -16r200000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   126
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   127
        (-16r10 126 -16r0400000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   128
        (-16r10 127 -16r0800000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   129
        (-16r10 128 -16r1000000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   130
        (-16r10 129 -16r2000000000000000000000000000000000)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   131
    ) triplesDo:[:val :cnt :expected |
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   132
        |rslt1 rslt2|
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   133
        
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   134
        rslt1 := val bitShift:cnt.
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   135
        self assert:(rslt1 = expected).
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   136
        expected class == SmallInteger ifTrue:[
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   137
            self assert:(rslt1 == expected)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   138
        ].    
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   139
        rslt2 := rslt1 bitShift:cnt negated.
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   140
        self assert:(rslt2 = val).
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   141
        val class == SmallInteger ifTrue:[
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   142
            self assert:(rslt2 == val)
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   143
        ].    
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   144
    ].
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   145
!
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   146
310
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
testDivide
1223
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   148
        |zero _1 _2 _3 _4 _m2 _m4|
619
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
   149
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
   150
        "circumvent compiler error about division by zero"
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
   151
        zero := 0.
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
   152
310
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
        self assert: 2 / 1 = 2.
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
        self assert: (3 / 2) isFraction.
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
        self assert: 4 / 2 = 2.
1223
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   156
        self assert: 4 / -2 = -2.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   157
        self assert: -4 / 2 = -2.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   158
        self assert: -4 / -2 = 2.
619
f918fa22ad81 Circumvent compiler error about div by zero
Stefan Vogel <sv@exept.de>
parents: 364
diff changeset
   159
        self should: [ 1 / zero ] raise: ZeroDivide.
1223
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   160
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   161
        _1 := 1.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   162
        _2 := 2.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   163
        _3 := 3.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   164
        _4 := 4.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   165
        _m2 := -2.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   166
        _m4 := -4.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   167
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   168
        self assert: _2 / _1 = _2.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   169
        self assert: (_3 / _2) isFraction.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   170
        self assert: _4 / _2 = 2.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   171
        self assert: _4 / _m2 = -2.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   172
        self assert: _m4 / _2 = -2.
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   173
        self assert: _m4 / _m2 = 2.
364
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   174
!
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   175
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   176
testMultiply
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   177
    |i ii|
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   178
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   179
    #( 
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   180
        16r3fff
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   181
        16r7fff 
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   182
        16rffff 
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   183
        16r3fffffff
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   184
        16r7fffffff
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   185
        16rffffffff
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   186
        16r20000000
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   187
        16r40000000
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   188
        16r80000000
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   189
        16r100000000
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   190
        16r20000001
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   191
        16r40000001
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   192
        16r80000001
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   193
        16r100000001
1223
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   194
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   195
        "/ for 64 bit machines:
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   196
        16r3fffffffffffffff
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   197
        16r7fffffffffffffff
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   198
        16rffffffffffffffff
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   199
        16r2000000000000000
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   200
        16r4000000000000000
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   201
        16r8000000000000000
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   202
        16r10000000000000000
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   203
        16r2000000000000001
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   204
        16r4000000000000001
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   205
        16r8000000000000001
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   206
        16r10000000000000001
364
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   207
    ) do:[:x |
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   208
        i := x.
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   209
        ii := i * i.
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   210
        self assert:((ii / i) = i).
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   211
        i class == SmallInteger ifTrue:[
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   212
            self assert:((ii / i) == i).
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   213
        ].
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   214
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   215
        i := x negated.
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   216
        ii := i * i.
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   217
        self assert:((ii / i) = i).
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   218
        i class == SmallInteger ifTrue:[
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   219
            self assert:((ii / i) == i).
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   220
        ].
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   221
    ].
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   222
!
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   223
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   224
testNegation
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   225
    |i iN iNN|
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   226
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   227
    #( 
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   228
        16r3fffffff
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   229
        16r7fffffff
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   230
        16rffffffff
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   231
        16r20000000
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   232
        16r40000000
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   233
        16r80000000
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   234
        16r100000000
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   235
        16r20000001
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   236
        16r40000001
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   237
        16r80000001
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   238
        16r100000001
1223
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   239
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   240
        "/ for 64bit machines:
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   241
        16r3fffffffffffffff
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   242
        16r7fffffffffffffff
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   243
        16rffffffffffffffff
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   244
        16r2000000000000000
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   245
        16r4000000000000000
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   246
        16r8000000000000000
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   247
        16r10000000000000000
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   248
        16r2000000000000001
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   249
        16r4000000000000001
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   250
        16r8000000000000001
708a62eac280 class: RegressionTests::SmallIntegerTest
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   251
        16r10000000000000001
364
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   252
    ) do:[:x |
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   253
        i := x.
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   254
        iN := i negated.
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   255
        iNN := iN negated.
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   256
        self assert:(i = iNN).
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   257
        i class == SmallInteger ifTrue:[
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   258
            self assert:(i == iNN).
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   259
        ].
fd3ff5ad69f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 310
diff changeset
   260
    ].
1306
9b2ba728b70e #FEATURE
Claus Gittinger <cg@exept.de>
parents: 1223
diff changeset
   261
    self assert:(SmallInteger maxVal negated class == SmallInteger).
9b2ba728b70e #FEATURE
Claus Gittinger <cg@exept.de>
parents: 1223
diff changeset
   262
    self assert:(SmallInteger maxVal negated negated == SmallInteger maxVal).
9b2ba728b70e #FEATURE
Claus Gittinger <cg@exept.de>
parents: 1223
diff changeset
   263
    
9b2ba728b70e #FEATURE
Claus Gittinger <cg@exept.de>
parents: 1223
diff changeset
   264
    self assert:(SmallInteger maxVal negated -1 == SmallInteger minVal).
9b2ba728b70e #FEATURE
Claus Gittinger <cg@exept.de>
parents: 1223
diff changeset
   265
    self assert:(SmallInteger minVal negated negated class == SmallInteger).
310
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
! !
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
!SmallIntegerTest methodsFor:'tests-class protocol'!
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
testBasicNew
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
    self should: [SmallInteger basicNew] raise: TestResult error. 
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
!
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
testMaxVal
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
    "/ the original code did not check for pointer-size;
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
    Smalltalk isSmalltalkX ifTrue:[
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
        SmallInteger maxBytes == 4 ifTrue:[
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
            self should: [SmallInteger maxVal = 16r3FFFFFFF].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
            self should: [SmallInteger maxVal == 16r3FFFFFFF].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
        ] ifFalse:[
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
            self should: [SmallInteger maxVal = 16r3FFFFFFFFFFFFFFF].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
            self should: [SmallInteger maxVal == 16r3FFFFFFFFFFFFFFF].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
        ].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
    ] ifFalse:[
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
        self should: [SmallInteger maxVal = 16r3FFFFFFF].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
    ]
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
!
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
1347
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   290
testMaxValPointerSizeConsistency
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   291
    SmallInteger maxBytes == 4 ifTrue:[
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   292
        self assert: ((SmallInteger maxBits == 31) or:[SmallInteger maxBits == 32]).
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   293
        self assert: (ExternalAddress pointerSize == 4).
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   294
    ] ifFalse:[
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   295
        self assert: ((SmallInteger maxBits == 63) or:[SmallInteger maxBits == 64]).
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   296
        self assert: (ExternalAddress pointerSize == 8).
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   297
    ]
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   298
!
e965d238a810 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 1306
diff changeset
   299
310
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
testMinVal
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
    "/ the original code did not check for pointer-size;
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
    Smalltalk isSmalltalkX ifTrue:[
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
        SmallInteger maxBytes == 4 ifTrue:[
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
            self should: [SmallInteger minVal = -16r40000000].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
            self should: [SmallInteger minVal == -16r40000000].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
        ] ifFalse:[
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
            self should: [SmallInteger minVal = -16r4000000000000000].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
            self should: [SmallInteger minVal == -16r4000000000000000].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
        ].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
    ] ifFalse:[
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
        self should: [SmallInteger minVal = -16r40000000].
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
    ]
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
!
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
testNew
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
    self should: [SmallInteger new] raise: TestResult error. 
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
! !
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
!SmallIntegerTest class methodsFor:'documentation'!
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
version
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
    ^ '$Header$'
f7a1f000a281 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
! !
1074
905aea054cf4 category
Claus Gittinger <cg@exept.de>
parents: 619
diff changeset
   325