RegressionTests__FractionTest.st
changeset 159 4864967123ca
child 180 5bd01bf41c4e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/RegressionTests__FractionTest.st	Fri Aug 02 17:01:20 2002 +0200
@@ -0,0 +1,88 @@
+"{ Package: 'exept:regression' }"
+
+"{ NameSpace: RegressionTests }"
+
+TestCase subclass:#FractionTest
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Tests-Regression'
+!
+
+
+!FractionTest methodsFor:'tests'!
+
+testMixedAddition
+    self assert:(((1/2) + (1/2)) = 1).
+    self assert:(((1/2) + 0.5) = 1).
+    self assert:(((1/2) + (0.5 asFixedPoint:2)) = 1).
+    self assert:(((1/2) + (0.5 asDouble)) = 1).
+    self assert:(((1/2) + (0.5 asFloat)) = 1).
+
+    self assert:(((1/2) + ((1/2) asFixedPoint:2)) = 1).
+    self assert:(((1/2) + ((1/2) asDouble)) = 1).
+    self assert:(((1/2) + ((1/2) asFloat)) = 1).
+
+
+    self assert:(((1/2) + (1/2)) = 1.0).
+    self assert:(((1/2) + 0.5) = 1.0).
+    self assert:(((1/2) + (0.5 asFixedPoint:2)) = 1.0).
+    self assert:(((1/2) + (0.5 asDouble)) = 1.0).
+    self assert:(((1/2) + (0.5 asFloat)) = 1.0).
+
+    self assert:(((1/2) + ((1/2) asFixedPoint:2)) = 1.0).
+    self assert:(((1/2) + ((1/2) asDouble)) = 1.0).
+    self assert:(((1/2) + ((1/2) asFloat)) = 1.0).
+
+    self assert:((0.5 + (1/2)) = 1).
+    self assert:(((0.5 asFixedPoint:2) + (1/2)) = 1).
+    self assert:((((0.5 asFloat) asDouble) + (1/2)) = 1).
+
+    self assert:((1 + (1/2)) = (3/2)).
+    self assert:((1.0 + (1/2)) = (3/2)).
+    self assert:(((1 asFixedPoint:2) + (1/2)) = (3/2)).
+    self assert:((((1 asFloat) asDouble) + (1/2)) = (3/2)).
+!
+
+testMixedAddition2
+    |fix1 fix2|
+
+    fix1 := (1/2) asFixedPoint:2.
+    fix2 := (1/2) asFixedPoint:2.
+
+    self assert:((fix1 + (1/2)) = 1).
+    self assert:((fix1 + 0.5) = 1).
+    self assert:((fix1 + (0.5 asFixedPoint:2)) = 1).
+    self assert:((fix1 + (0.5 asDouble)) = 1).
+    self assert:((fix1 + (0.5 asFloat)) = 1).
+
+    self assert:((fix1 + ((1/2) asFixedPoint:2)) = 1).
+    self assert:((fix1 + ((1/2) asDouble)) = 1).
+    self assert:((fix1 + ((1/2) asFloat)) = 1).
+
+
+    self assert:((fix1 + (1/2)) = 1.0).
+    self assert:((fix1 + 0.5) = 1.0).
+    self assert:((fix1 + (0.5 asFixedPoint:2)) = 1.0).
+    self assert:((fix1 + (0.5 asDouble)) = 1.0).
+    self assert:((fix1 + (0.5 asFloat)) = 1.0).
+
+    self assert:((fix1 + ((1/2) asFixedPoint:2)) = 1.0).
+    self assert:((fix1 + ((1/2) asDouble)) = 1.0).
+    self assert:((fix1 + ((1/2) asFloat)) = 1.0).
+
+    self assert:((0.5 + (fix1)) = 1).
+    self assert:(((0.5 asFixedPoint:2) + fix1) = 1).
+    self assert:((((0.5 asFloat) asDouble) + (fix1)) = 1).
+
+    self assert:((1 + fix1) = (3/2)).
+    self assert:((1.0 + fix1) = (3/2)).
+    self assert:(((1 asFixedPoint:2) + fix1) = (3/2)).
+    self assert:((((1 asFloat) asDouble) + fix1) = (3/2)).
+! !
+
+!FractionTest class methodsFor:'documentation'!
+
+version
+    ^ '$Header$'
+! !