--- a/RegressionTests__IntegerTest.st Tue Feb 19 20:21:21 2002 +0100
+++ b/RegressionTests__IntegerTest.st Tue May 07 18:07:58 2002 +0200
@@ -685,6 +685,66 @@
self assert:((rslt := -1 perform:op with: b) == 0).
self assert:((rslt := a perform:op with: b) == 0).
+ a := 1.
+ b := 8.
+ self assert:(1 // 8 == 0).
+ self assert:(a // 8 == 0).
+ self assert:(1 // b == 0).
+ self assert:(a // b == 0).
+
+ self assert:((rslt := 1 perform:op with: 8) == 0).
+ self assert:((rslt := a perform:op with: 8) == 0).
+ self assert:((rslt := 1 perform:op with: b) == 0).
+ self assert:((rslt := a perform:op with: b) == 0).
+
+ a := -16.
+ b := 8.
+ self assert:(-16 // 8 == -2).
+ self assert:(a // 8 == -2).
+ self assert:(-16 // b == -2).
+ self assert:(a // b == -2).
+
+ self assert:((rslt := -16 perform:op with: 8) == -2).
+ self assert:((rslt := a perform:op with: 8) == -2).
+ self assert:((rslt := -16 perform:op with: b) == -2).
+ self assert:((rslt := a perform:op with: b) == -2).
+
+ a := 16.
+ b := -8.
+ self assert:(16 // -8 == -2).
+ self assert:(a // -8 == -2).
+ self assert:(16 // b == -2).
+ self assert:(a // b == -2).
+
+ self assert:((rslt := 16 perform:op with: -8) == -2).
+ self assert:((rslt := a perform:op with: -8) == -2).
+ self assert:((rslt := 16 perform:op with: b) == -2).
+ self assert:((rslt := a perform:op with: b) == -2).
+
+ a := -16.
+ b := -8.
+ self assert:(-16 // -8 == 2).
+ self assert:(a // -8 == 2).
+ self assert:(-16 // b == 2).
+ self assert:(a // b == 2).
+
+ self assert:((rslt := -16 perform:op with: -8) == 2).
+ self assert:((rslt := a perform:op with: -8) == 2).
+ self assert:((rslt := -16 perform:op with: b) == 2).
+ self assert:((rslt := a perform:op with: b) == 2).
+
+ a := 16.
+ b := 8.
+ self assert:(16 // 8 == 2).
+ self assert:(a // 8 == 2).
+ self assert:(16 // b == 2).
+ self assert:(a // b == 2).
+
+ self assert:((rslt := 16 perform:op with: 8) == 2).
+ self assert:((rslt := a perform:op with: 8) == 2).
+ self assert:((rslt := 16 perform:op with: b) == 2).
+ self assert:((rslt := a perform:op with: b) == 2).
+
op := #quo:.
a := -1.
b := 8.
@@ -722,6 +782,66 @@
self assert:((rslt := -1 perform:op with: b) == 0).
self assert:((rslt := a perform:op with: b) == 0).
+ a := 1.
+ b := 8.
+ self assert:((rslt := 1 quo: 8) == 0).
+ self assert:((rslt := a quo: 8) == 0).
+ self assert:((rslt := 1 quo: b) == 0).
+ self assert:((rslt := a quo: b) == 0).
+
+ self assert:((rslt := 1 perform:op with: 8) == 0).
+ self assert:((rslt := a perform:op with: 8) == 0).
+ self assert:((rslt := 1 perform:op with: b) == 0).
+ self assert:((rslt := a perform:op with: b) == 0).
+
+ a := -16.
+ b := 8.
+ self assert:((rslt := -16 quo: 8) == -2).
+ self assert:((rslt := a quo: 8) == -2).
+ self assert:((rslt := -16 quo: b) == -2).
+ self assert:((rslt := a quo: b) == -2).
+
+ self assert:((rslt := -16 perform:op with: 8) == -2).
+ self assert:((rslt := a perform:op with: 8) == -2).
+ self assert:((rslt := -16 perform:op with: b) == -2).
+ self assert:((rslt := a perform:op with: b) == -2).
+
+ a := 16.
+ b := -8.
+ self assert:((rslt := 16 quo: -8) == -2).
+ self assert:((rslt := a quo: -8) == -2).
+ self assert:((rslt := 16 quo: b) == -2).
+ self assert:((rslt := a quo: b) == -2).
+
+ self assert:((rslt := 16 perform:op with: -8) == -2).
+ self assert:((rslt := a perform:op with: -8) == -2).
+ self assert:((rslt := 16 perform:op with: b) == -2).
+ self assert:((rslt := a perform:op with: b) == -2).
+
+ a := -16.
+ b := -8.
+ self assert:((rslt := -16 quo: -8) == 2).
+ self assert:((rslt := a quo: -8) == 2).
+ self assert:((rslt := -16 quo: b) == 2).
+ self assert:((rslt := a quo: b) == 2).
+
+ self assert:((rslt := -16 perform:op with: -8) == 2).
+ self assert:((rslt := a perform:op with: -8) == 2).
+ self assert:((rslt := -16 perform:op with: b) == 2).
+ self assert:((rslt := a perform:op with: b) == 2).
+
+ a := 16.
+ b := 8.
+ self assert:((rslt := 16 quo: 8) == 2).
+ self assert:((rslt := a quo: 8) == 2).
+ self assert:((rslt := 16 quo: b) == 2).
+ self assert:((rslt := a quo: b) == 2).
+
+ self assert:((rslt := 16 perform:op with: 8) == 2).
+ self assert:((rslt := a perform:op with: 8) == 2).
+ self assert:((rslt := 16 perform:op with: b) == 2).
+ self assert:((rslt := a perform:op with: b) == 2).
+
"
self basicNew testDivision
"
@@ -1665,6 +1785,68 @@
self assert:((-1 perform:op with: b) == -1).
self assert:((a perform:op with: b) == -1).
+ a := 1.
+ b := 8.
+ self assert:(1 \\ 8 == 1).
+ self assert:(a \\ 8 == 1).
+ self assert:(1 \\ b == 1).
+ self assert:(a \\ b == 1).
+
+ self assert:((1 perform:op with: 8) == 1).
+ self assert:((a perform:op with: 8) == 1).
+ self assert:((1 perform:op with: b) == 1).
+ self assert:((a perform:op with: b) == 1).
+
+
+ a := -17.
+ b := 8.
+ self assert:(-17 \\ 8 == 7).
+ self assert:(a \\ 8 == 7).
+ self assert:(-17 \\ b == 7).
+ self assert:(a \\ b == 7).
+
+ self assert:((-17 perform:op with: 8) == 7).
+ self assert:((a perform:op with: 8) == 7).
+ self assert:((-17 perform:op with: b) == 7).
+ self assert:((a perform:op with: b) == 7).
+
+ a := 17.
+ b := -8.
+ self assert:(17 \\ -8 == -7).
+ self assert:(a \\ -8 == -7).
+ self assert:(17 \\ b == -7).
+ self assert:(a \\ b == -7).
+
+ self assert:((17 perform:op with: -8) == -7).
+ self assert:((a perform:op with: -8) == -7).
+ self assert:((17 perform:op with: b) == -7).
+ self assert:((a perform:op with: b) == -7).
+
+ a := -17.
+ b := -8.
+ self assert:(-17 \\ -8 == -1).
+ self assert:(a \\ -8 == -1).
+ self assert:(-17 \\ b == -1).
+ self assert:(a \\ b == -1).
+
+ self assert:((-17 perform:op with: -8) == -1).
+ self assert:((a perform:op with: -8) == -1).
+ self assert:((-17 perform:op with: b) == -1).
+ self assert:((a perform:op with: b) == -1).
+
+ a := 17.
+ b := 8.
+ self assert:(17 \\ 8 == 1).
+ self assert:(a \\ 8 == 1).
+ self assert:(17 \\ b == 1).
+ self assert:(a \\ b == 1).
+
+ self assert:((17 perform:op with: 8) == 1).
+ self assert:((a perform:op with: 8) == 1).
+ self assert:((17 perform:op with: b) == 1).
+ self assert:((a perform:op with: b) == 1).
+
+
op := #rem:.
a := -1.
b := 8.
@@ -1702,6 +1884,66 @@
self assert:((-1 perform:op with: b) == -1).
self assert:((a perform:op with: b) == -1).
+ a := 1.
+ b := 8.
+ self assert:((1 rem: 8) == 1).
+ self assert:((a rem: 8) == 1).
+ self assert:((1 rem: b) == 1).
+ self assert:((a rem: b) == 1).
+
+ self assert:((1 perform:op with: 8) == 1).
+ self assert:((a perform:op with: 8) == 1).
+ self assert:((1 perform:op with: b) == 1).
+ self assert:((a perform:op with: b) == 1).
+
+ a := -17.
+ b := 8.
+ self assert:((-17 rem: 8) == -1).
+ self assert:((a rem: 8) == -1).
+ self assert:((-17 rem: b) == -1).
+ self assert:((a rem: b) == -1).
+
+ self assert:((-17 perform:op with: -8) == -1).
+ self assert:((a perform:op with: -8) == -1).
+ self assert:((-17 perform:op with: b) == -1).
+ self assert:((a perform:op with: b) == -1).
+
+ a := 17.
+ b := -8.
+ self assert:((17 rem: -8) == 1).
+ self assert:((a rem: -8) == 1).
+ self assert:((17 rem: b) == 1).
+ self assert:((a rem: b) == 1).
+
+ self assert:((17 perform:op with: -8) == 1).
+ self assert:((a perform:op with: -8) == 1).
+ self assert:((17 perform:op with: b) == 1).
+ self assert:((a perform:op with: b) == 1).
+
+ a := -17.
+ b := -8.
+ self assert:((-17 rem: -8) == -1).
+ self assert:((a rem: -8) == -1).
+ self assert:((-17 rem: b) == -1).
+ self assert:((a rem: b) == -1).
+
+ self assert:((-17 perform:op with: -8) == -1).
+ self assert:((a perform:op with: -8) == -1).
+ self assert:((-17 perform:op with: b) == -1).
+ self assert:((a perform:op with: b) == -1).
+
+ a := 17.
+ b := 8.
+ self assert:((17 rem: 8) == 1).
+ self assert:((a rem: 8) == 1).
+ self assert:((17 rem: b) == 1).
+ self assert:((a rem: b) == 1).
+
+ self assert:((17 perform:op with: 8) == 1).
+ self assert:((a perform:op with: 8) == 1).
+ self assert:((17 perform:op with: b) == 1).
+ self assert:((a perform:op with: b) == 1).
+
"
self basicNew testModulu
"