2003-04-12 Miguel de Icaza <miguel@ximian.com>
[mono.git] / mcs / tests / README.tests
1 Test cases listed by Category:
2 ==============================
3
4 * Binary operators
5
6   test-146.cs test-175.cs
7
8 * Overloading
9
10   test-147.cs test-173.cs
11
12 * Try/Catch blocks
13
14   verify-1.cs verify-2.cs
15
16 * Indexers and Properties
17
18   test-148.cs test-166.cs
19
20 * Events and Delegates
21
22   test-149.cs test-164.cs verify-3.cs
23
24 * Constant Folding
25
26   test-150.cs
27
28 * Switch blocks
29
30   test-152.cs verify-4.cs
31
32 * Member Access & Simple Names
33
34   test-151.cs test-159.cs test-160.cs test-161.cs test-190.cs
35
36 * Invocation
37
38   test-153.cs test-163.c
39
40 * Flow Analysis
41
42   test-154.cs test-162.cs test-185.cs test-189.cs
43
44 * Type Containers
45
46   test-155.cs test-156.cs
47
48 * Attributes
49
50   test-157.cs test-158.cs test-177.cs 
51
52 * Arrays and array creation
53
54   test-165.cs, test-167.cs
55
56 * Labels and goto
57
58   verify-5.cs
59
60 * Enums
61
62   verify-6.cs
63
64 Test cases listed by Number:
65 ============================
66
67 test-146.cs
68 -----------
69 Test for Binary.EmitBrancheable() to ensure we're emitting correct
70 unsinged branch targets.
71
72 test-147.cs
73 -----------
74 Testing `new' modifier.
75
76 test-148.cs
77 -----------
78 Testing the `IndexerName' attribute in interface indexers.
79
80 test-149.cs
81 -----------
82 Testing interface events.
83
84 test-150.cs
85 -----------
86 Test for folding of UIntConstants.  See bug #28106.
87 FIXME:  We should all all possible test cases to this test.
88
89 test-151.cs
90 -----------
91
92   A.Iface b;
93   void doit (Object A) {
94     b = (A.Iface)A;
95  }
96
97 test-152.cs
98 -----------
99 Scope of variables declared inside a switch case.
100
101 test-153.cs
102 -----------
103 Testing invocation of varargs function.
104
105 test-154.cs
106 -----------
107 Flow analysis: This test contains all situations which are "allowed".
108
109 test-155.cs
110 -----------
111 Nested interfaces.
112
113 test-156.cs
114 -----------
115 Check whether base types are at least as accessible than the current type.
116
117 test-157.cs
118 -----------
119 Attributes.
120
121 test-158.cs
122 -----------
123 Attributes.
124
125 test-159.cs
126 -----------
127 SimpleNameLookup: Cast to `A.Iface' type when there's a parameter called `A'.
128
129 test-160.cs
130 -----------
131 ResolveMemberLookup: `B look; return look.s.a' must work in static context.
132
133 test-161.cs
134 -----------
135 ResolveMemberLookup: Field initializer references `DateTime.Now' when there's
136 an instance property/field `DateTime'.
137
138 test-162.cs
139 -----------
140 Control Flow Analysis wrt. structs.
141
142 test-163.cs
143 -----------
144 Test to check we select string over object when we have a Null literal as the argument.
145
146 test-164.cs
147 -----------
148 Virtual functions in delegate creation expressions.
149
150 test-165.cs
151 -----------
152 Enums in array creation expression.
153
154 test-166.cs
155 -----------
156 Using property from interface which is inherited multiple times.
157
158 test-173.cs
159 -----------
160 Check whether we select the correct function, don't report CS0121
161 for integer literals.
162
163 test-174.cs
164 -----------
165 Checks access to protected properties on base classes, and access to 
166 private properties on container classes.
167
168 test-175.cs
169 -----------
170 Check for user-defined implicit conversions if both arguments of a
171 binary operator are of a user-defined type.  Bug #30443.
172
173 test-176.cs
174 -----------
175 This tests checks that we perform constant folding on byte values.  The
176 compiler had a bug where it did not do so.
177
178 test-177.cs
179 -----------
180 This tests that the compiler is generating "return:" attributes for a 
181 method.  This was a separate code path, and was not handled in the past.
182
183 test-179.cs
184 -----------
185 Tests various uses of the indexers in the presence of the `new' keyword
186 and various different argument types.
187
188 test-180.cs
189 -----------
190 This test is part of a bug report in which casting an enumeration value
191 into System.Enum was not wrapped correctly, and the wrong method was
192 called.
193
194 test-181.cs
195 -----------
196 Test whenever mcs correctly handles the MethodImplAttributes
197 custom attribute.
198
199 test-182.cs
200 -----------
201 Tests that bug 37473 is gone.  The problem was that we were generating
202 incorrect code for field references on a value type.  The code was originally
203 written by Martin, but I turned it off as I did not see what it did fix.  The
204 code is now turned on again.  
205
206 test-183.cs
207 -----------
208 This test just verifies that we generate the proper signature for
209 EndInvoke, something that we were not doing before in the presence
210 of out parameters
211
212 test-184.cs
213 -----------
214 This test fixes a bug that exposed a problem when calling a struct
215 constructor that is initialized from an instance constructor
216
217 test-185.cs
218 -----------
219 Flow analysis wrt. infinite loops.  Bug #37708.
220
221 test-186.cs
222 -----------
223 Typecasts were not being constant-folded/reduced, which triggered
224 the bug 37363.   (String) null was not a null constant in attributes.
225
226 test-187.cs
227 -----------
228 This test verifies that we resolve the source expression in a compound
229 expression before we attempt to use it.
230
231 test-188.cs
232 -----------
233 Test that the foreach statement generated by mcs invokes the Dispose()
234 method even if the enumerator class returned by GetEnumerator () does not
235 implement IDisposable.
236
237 test-189.cs
238 -----------
239 Flow analysis wrt. nested infinite loops.  Bug #40670.
240
241 test-190.cs
242 -----------
243 Accessing private field of outer class from which we derive.
244
245 tests-191.cs
246 ------------
247 Some accessibility tests that exist in Corlib and System, to probe the new
248 functionality in the compiler for accessibility of private nested classes.
249
250 verify-1.cs
251 -----------
252 Test whether we do not jump out of the method in a Try/Finally block.
253
254 verify-2.cs
255 -----------
256 Test whether `return' in a Try/Catch block actually returns.  Test
257 whether continue uses Leave when the branch is across Try/Catch
258 boundaries.
259
260 verify-3.cs
261 -----------
262 Checks default add/remove method of static events.
263
264 verify-4.cs
265 -----------
266 When there's an unreachable break in a switch section, it must not emit a jump out of
267 the method.
268
269 verify-6.cs
270 -----------
271 Casts from/to System.Enum.
272
273 unsafe-6.cs:
274 ------------
275 Tests the correct computation of compound operators in the context of a pointer 
276 dereference on the left side.