--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/RegressionTests__ExceptionTest.st Tue Apr 06 15:30:39 2004 +0200
@@ -0,0 +1,153 @@
+"{ Package: 'exept:regression' }"
+
+"{ NameSpace: RegressionTests }"
+
+TestCase subclass:#ExceptionTest
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'tests-Regression'
+!
+
+!ExceptionTest class methodsFor:'documentation'!
+
+documentation
+"
+ documentation to be added.
+
+ [author:]
+ Stefan Vogel (stefan@zwerg)
+
+ [instance variables:]
+
+ [class variables:]
+
+ [see also:]
+
+"
+! !
+
+!ExceptionTest methodsFor:'initialize / release'!
+
+setUp
+ "common setup - invoked before testing."
+
+ super setUp
+!
+
+tearDown
+ "common cleanup - invoked after testing."
+
+ super tearDown
+! !
+
+!ExceptionTest methodsFor:'tests'!
+
+test1
+
+ |result zero|
+
+ result := OrderedCollection new.
+ zero := 0.
+
+ [ 0 // zero ] on:ZeroDivide do:[:ex|
+ self assert:(ex signal == ZeroDivide).
+ self assert:(ex originator == 0).
+ result add:#Error
+ ].
+ self assert:(result size == 1).
+ self assert:(result first == #Error).
+
+
+ "
+ self run:#test1
+ self new test1
+ "
+!
+
+test10
+
+ |result zero|
+
+ result := OrderedCollection new.
+ zero := 0.
+
+ [
+ [
+ Warning handle:[:ex | result add:#Warning ] do:[ 2 // zero ].
+ ] on:ZeroDivide do:[:ex |
+ result add:#Error.
+ ex reject.
+ [
+ self warn:ex description.
+ ] on:Warning do:[:ex| result add:#Warning2]
+ ]
+ ] on:ZeroDivide do:[:ex |
+ result add:#Error2
+ ].
+
+ self assert:(result size == 2).
+ self assert:(result first == #Error).
+ self assert:(result second == #Error2)
+
+ "
+ self run:#test10
+ self new test10
+ "
+!
+
+test2
+
+ |result zero|
+
+ result := OrderedCollection new.
+ zero := 0.
+
+ self should:[
+ [ 0 // zero ] on:ZeroDivide do:[:ex|
+ result add:#Error.
+ 0 // zero
+ ].
+ ] raise:ZeroDivide.
+ self assert:(result size == 1).
+ self assert:(result first == #Error).
+
+
+ "
+ self run:#test2
+ self new test2
+ "
+!
+
+test3
+
+ |result zero|
+
+ result := OrderedCollection new.
+ zero := 0.
+
+ self should:[
+ [ 0 // zero ] on:ZeroDivide do:[:ex|
+ result add:#Error.
+ [ 0 // zero ] on:ZeroDivide do:[:ex|
+ result add:#Error1.
+ ex reject.
+ ].
+ ].
+ ] raise:ZeroDivide.
+ self assert:(result size == 2).
+ self assert:(result first == #Error).
+ self assert:(result second == #Error1).
+
+
+ "
+ self run:#test3
+ self new test3
+ "
+! !
+
+!ExceptionTest class methodsFor:'documentation'!
+
+version
+ ^ '$Header$'
+! !