Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(169)

Side by Side Diff: tests/compiler/dart2js/instantiated_classes_test.dart

Issue 2990223002: Reformat untouched files. (Closed)
Patch Set: Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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 library instantiated_classes_test; 5 library instantiated_classes_test;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 import 'package:expect/expect.dart'; 8 import 'package:expect/expect.dart';
9 import 'package:async_helper/async_helper.dart'; 9 import 'package:async_helper/async_helper.dart';
10 import 'package:compiler/src/elements/entities.dart' 10 import 'package:compiler/src/elements/entities.dart'
11 show ClassEntity, LibraryEntity; 11 show ClassEntity, LibraryEntity;
12 import 'type_test_helper.dart'; 12 import 'type_test_helper.dart';
13 13
14 void main() { 14 void main() {
15 asyncTest(() => Future.forEach([ 15 asyncTest(() => Future.forEach([
16 () => test("class Class {}", ["Class"]), 16 () => test("class Class {}", ["Class"]),
17 () => test( 17 () => test("""abstract class A {}
18 """abstract class A {} 18 class Class extends A {}""", ["Class"]),
19 class Class extends A {}""", 19 () => test("""class A {}
20 ["Class"]), 20 class Class extends A {}""", ["Class"]),
21 () => test( 21 () => test("""class A {}
22 """class A {}
23 class Class extends A {}""",
24 ["Class"]),
25 () => test(
26 """class A {}
27 class B {} 22 class B {}
28 class Class extends A {}""", 23 class Class extends A {}""", ["Class"]),
29 ["Class"]), 24 () => test("""class A {}
30 () => test( 25 class Class implements A {}""", ["Class"]),
31 """class A {} 26 () => test("""class A {}
32 class Class implements A {}""", 27 class Class extends Object with A {}""", ["Class"]),
33 ["Class"]), 28 () => test("""class A {}
34 () => test(
35 """class A {}
36 class Class extends Object with A {}""",
37 ["Class"]),
38 () => test(
39 """class A {}
40 class B {} 29 class B {}
41 class Class extends Object with B implements A {}""", 30 class Class extends Object with B implements A {}""",
42 ["Class"]), 31 ["Class"]),
43 32
44 () => test( 33 () => test("""class A {}
45 """class A {} 34 class Class {}""", ["Class", "A"], ["Class", "A"]),
46 class Class {}""", 35 () => test("""class A {}
47 ["Class", "A"], 36 class Class extends A {}""", ["Class", "A"], ["Class", "A"]),
37 () => test("""class A {}
38 class Class implements A {}""", ["Class", "A"],
48 ["Class", "A"]), 39 ["Class", "A"]),
49 () => test( 40 () => test("""class A {}
50 """class A {}
51 class Class extends A {}""",
52 ["Class", "A"],
53 ["Class", "A"]),
54 () => test(
55 """class A {}
56 class Class implements A {}""",
57 ["Class", "A"],
58 ["Class", "A"]),
59 () => test(
60 """class A {}
61 class B extends A {} 41 class B extends A {}
62 class Class extends B {}""", 42 class Class extends B {}""", ["Class", "A"], ["Class", "A"]),
63 ["Class", "A"], 43 () => test("""class A {}
64 ["Class", "A"]),
65 () => test(
66 """class A {}
67 class B {} 44 class B {}
68 class Class extends B with A {}""", 45 class Class extends B with A {}""", ["Class", "A"],
69 ["Class", "A"],
70 ["Class", "A"]), 46 ["Class", "A"]),
71 47
72 // TODO(johnniwinther): Avoid registration of `Class` as instantiated. 48 // TODO(johnniwinther): Avoid registration of `Class` as instantiated.
73 () => test( 49 () => test("""class A {}
74 """class A {}
75 class Class implements A { 50 class Class implements A {
76 factory Class() = A; 51 factory Class() = A;
77 }""", 52 }""", ["Class", "A"], ["Class"]),
78 ["Class", "A"],
79 ["Class"]),
80 ], (f) => f())); 53 ], (f) => f()));
81 } 54 }
82 55
83 Future test(String source, List<String> directlyInstantiatedClasses, 56 Future test(String source, List<String> directlyInstantiatedClasses,
84 [List<String> newClasses = const <String>["Class"]]) { 57 [List<String> newClasses = const <String>["Class"]]) {
85 StringBuffer mainSource = new StringBuffer(); 58 StringBuffer mainSource = new StringBuffer();
86 mainSource.write('main() {\n'); 59 mainSource.write('main() {\n');
87 for (String newClass in newClasses) { 60 for (String newClass in newClasses) {
88 mainSource.write(' new $newClass();\n'); 61 mainSource.write(' new $newClass();\n');
89 } 62 }
90 mainSource.write('}'); 63 mainSource.write('}');
91 return TypeEnvironment 64 return TypeEnvironment
92 .create(source, mainSource: mainSource.toString(), useMockCompiler: true) 65 .create(source, mainSource: mainSource.toString(), useMockCompiler: true)
93 .then((dynamic env) { 66 .then((dynamic env) {
94 LibraryEntity mainLibrary = 67 LibraryEntity mainLibrary =
95 env.compiler.frontendStrategy.elementEnvironment.mainLibrary; 68 env.compiler.frontendStrategy.elementEnvironment.mainLibrary;
96 Iterable<ClassEntity> expectedClasses = 69 Iterable<ClassEntity> expectedClasses =
97 directlyInstantiatedClasses.map(env.getElement); 70 directlyInstantiatedClasses.map(env.getElement);
98 Iterable<ClassEntity> actualClasses = env 71 Iterable<ClassEntity> actualClasses = env
99 .compiler.resolutionWorldBuilder.directlyInstantiatedClasses 72 .compiler.resolutionWorldBuilder.directlyInstantiatedClasses
100 .where((c) => c.library == mainLibrary); 73 .where((c) => c.library == mainLibrary);
101 Expect.setEquals(expectedClasses, actualClasses); 74 Expect.setEquals(expectedClasses, actualClasses);
102 }); 75 });
103 } 76 }
OLDNEW
« no previous file with comments | « tests/compiler/dart2js/error_token_test.dart ('k') | tests/compiler/dart2js/interop_anonymous_unreachable_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698