|
1 "{ Package: 'exept:regression' }" |
|
2 |
|
3 "{ NameSpace: RegressionTests }" |
|
4 |
|
5 TestCase subclass:#ExceptionTest |
|
6 instanceVariableNames:'' |
|
7 classVariableNames:'' |
|
8 poolDictionaries:'' |
|
9 category:'tests-Regression' |
|
10 ! |
|
11 |
|
12 !ExceptionTest class methodsFor:'documentation'! |
|
13 |
|
14 documentation |
|
15 " |
|
16 documentation to be added. |
|
17 |
|
18 [author:] |
|
19 Stefan Vogel (stefan@zwerg) |
|
20 |
|
21 [instance variables:] |
|
22 |
|
23 [class variables:] |
|
24 |
|
25 [see also:] |
|
26 |
|
27 " |
|
28 ! ! |
|
29 |
|
30 !ExceptionTest methodsFor:'initialize / release'! |
|
31 |
|
32 setUp |
|
33 "common setup - invoked before testing." |
|
34 |
|
35 super setUp |
|
36 ! |
|
37 |
|
38 tearDown |
|
39 "common cleanup - invoked after testing." |
|
40 |
|
41 super tearDown |
|
42 ! ! |
|
43 |
|
44 !ExceptionTest methodsFor:'tests'! |
|
45 |
|
46 test1 |
|
47 |
|
48 |result zero| |
|
49 |
|
50 result := OrderedCollection new. |
|
51 zero := 0. |
|
52 |
|
53 [ 0 // zero ] on:ZeroDivide do:[:ex| |
|
54 self assert:(ex signal == ZeroDivide). |
|
55 self assert:(ex originator == 0). |
|
56 result add:#Error |
|
57 ]. |
|
58 self assert:(result size == 1). |
|
59 self assert:(result first == #Error). |
|
60 |
|
61 |
|
62 " |
|
63 self run:#test1 |
|
64 self new test1 |
|
65 " |
|
66 ! |
|
67 |
|
68 test10 |
|
69 |
|
70 |result zero| |
|
71 |
|
72 result := OrderedCollection new. |
|
73 zero := 0. |
|
74 |
|
75 [ |
|
76 [ |
|
77 Warning handle:[:ex | result add:#Warning ] do:[ 2 // zero ]. |
|
78 ] on:ZeroDivide do:[:ex | |
|
79 result add:#Error. |
|
80 ex reject. |
|
81 [ |
|
82 self warn:ex description. |
|
83 ] on:Warning do:[:ex| result add:#Warning2] |
|
84 ] |
|
85 ] on:ZeroDivide do:[:ex | |
|
86 result add:#Error2 |
|
87 ]. |
|
88 |
|
89 self assert:(result size == 2). |
|
90 self assert:(result first == #Error). |
|
91 self assert:(result second == #Error2) |
|
92 |
|
93 " |
|
94 self run:#test10 |
|
95 self new test10 |
|
96 " |
|
97 ! |
|
98 |
|
99 test2 |
|
100 |
|
101 |result zero| |
|
102 |
|
103 result := OrderedCollection new. |
|
104 zero := 0. |
|
105 |
|
106 self should:[ |
|
107 [ 0 // zero ] on:ZeroDivide do:[:ex| |
|
108 result add:#Error. |
|
109 0 // zero |
|
110 ]. |
|
111 ] raise:ZeroDivide. |
|
112 self assert:(result size == 1). |
|
113 self assert:(result first == #Error). |
|
114 |
|
115 |
|
116 " |
|
117 self run:#test2 |
|
118 self new test2 |
|
119 " |
|
120 ! |
|
121 |
|
122 test3 |
|
123 |
|
124 |result zero| |
|
125 |
|
126 result := OrderedCollection new. |
|
127 zero := 0. |
|
128 |
|
129 self should:[ |
|
130 [ 0 // zero ] on:ZeroDivide do:[:ex| |
|
131 result add:#Error. |
|
132 [ 0 // zero ] on:ZeroDivide do:[:ex| |
|
133 result add:#Error1. |
|
134 ex reject. |
|
135 ]. |
|
136 ]. |
|
137 ] raise:ZeroDivide. |
|
138 self assert:(result size == 2). |
|
139 self assert:(result first == #Error). |
|
140 self assert:(result second == #Error1). |
|
141 |
|
142 |
|
143 " |
|
144 self run:#test3 |
|
145 self new test3 |
|
146 " |
|
147 ! ! |
|
148 |
|
149 !ExceptionTest class methodsFor:'documentation'! |
|
150 |
|
151 version |
|
152 ^ '$Header$' |
|
153 ! ! |