OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 import 'dart:uri'; | 5 import 'dart:uri'; |
6 import 'parser_helper.dart'; | 6 import 'parser_helper.dart'; |
7 import 'mock_compiler.dart'; | 7 import 'mock_compiler.dart'; |
8 import '../../../sdk/lib/_internal/compiler/implementation/tree/tree.dart'; | 8 import '../../../sdk/lib/_internal/compiler/implementation/tree/tree.dart'; |
9 | 9 |
10 testUnparse(String statement) { | 10 testUnparse(String statement) { |
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
280 testUnparseMemberAndAsMemberOfFoo( | 280 testUnparseMemberAndAsMemberOfFoo( |
281 "external const factory Foo() = prefix.Bar<List<T>,T>.baz;"); | 281 "external const factory Foo() = prefix.Bar<List<T>,T>.baz;"); |
282 } | 282 } |
283 | 283 |
284 testClassDeclarations() { | 284 testClassDeclarations() { |
285 testUnparseTopLevelWithMetadata('class Foo{}'); | 285 testUnparseTopLevelWithMetadata('class Foo{}'); |
286 testUnparseTopLevelWithMetadata('abstract class Foo{}'); | 286 testUnparseTopLevelWithMetadata('abstract class Foo{}'); |
287 testUnparseTopLevelWithMetadata('class Fisk{operator-(x){}}'); | 287 testUnparseTopLevelWithMetadata('class Fisk{operator-(x){}}'); |
288 } | 288 } |
289 | 289 |
| 290 testMixinApplications() { |
| 291 testUnparseTopLevelWithMetadata('typedef C = S with M;'); |
| 292 testUnparseTopLevelWithMetadata('typedef C = S with M1,M2;'); |
| 293 testUnparseTopLevelWithMetadata('typedef C = S with M1,M2,M3;'); |
| 294 |
| 295 testUnparseTopLevelWithMetadata('typedef C<A> = S with M;'); |
| 296 testUnparseTopLevelWithMetadata('typedef C<A,B> = S with M;'); |
| 297 |
| 298 testUnparseTopLevelWithMetadata('typedef C = S<A> with M;'); |
| 299 testUnparseTopLevelWithMetadata('typedef C = S<A,B> with M;'); |
| 300 |
| 301 testUnparseTopLevelWithMetadata('typedef C = S with M<A>;'); |
| 302 testUnparseTopLevelWithMetadata('typedef C = S with M<A,B>;'); |
| 303 testUnparseTopLevelWithMetadata('typedef C = S with M1<A>,M2;'); |
| 304 testUnparseTopLevelWithMetadata('typedef C = S with M1,M2<A,B>;'); |
| 305 } |
| 306 |
290 main() { | 307 main() { |
291 testSignedConstants(); | 308 testSignedConstants(); |
292 testGenericTypes(); | 309 testGenericTypes(); |
293 testForLoop(); | 310 testForLoop(); |
294 testEmptyList(); | 311 testEmptyList(); |
295 testClosure(); | 312 testClosure(); |
296 testIndexedOperatorDecl(); | 313 testIndexedOperatorDecl(); |
297 testNativeMethods(); | 314 testNativeMethods(); |
298 testPrefixIncrements(); | 315 testPrefixIncrements(); |
299 testConstModifier(); | 316 testConstModifier(); |
300 testSimpleObjectInstantiation(); | 317 testSimpleObjectInstantiation(); |
301 testLibraryName(); | 318 testLibraryName(); |
302 testImport(); | 319 testImport(); |
303 testExport(); | 320 testExport(); |
304 testPart(); | 321 testPart(); |
305 testPartOf(); | 322 testPartOf(); |
306 testCombinators(); | 323 testCombinators(); |
307 testRedirectingFactoryConstructors(); | 324 testRedirectingFactoryConstructors(); |
308 testClassDeclarations(); | 325 testClassDeclarations(); |
| 326 testMixinApplications(); |
309 } | 327 } |
OLD | NEW |