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

Side by Side Diff: tests/compiler/dart2js/mixin_typevariable_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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 mixin_typevariable_test; 5 library mixin_typevariable_test;
6 6
7 import 'package:expect/expect.dart'; 7 import 'package:expect/expect.dart';
8 import "package:async_helper/async_helper.dart"; 8 import "package:async_helper/async_helper.dart";
9 import 'type_test_helper.dart'; 9 import 'type_test_helper.dart';
10 import 'package:compiler/src/elements/resolution_types.dart'; 10 import 'package:compiler/src/elements/resolution_types.dart';
11 import "package:compiler/src/elements/elements.dart" show ClassElement; 11 import "package:compiler/src/elements/elements.dart" show ClassElement;
12 12
13 void main() { 13 void main() {
14 testMixinSupertypes(); 14 testMixinSupertypes();
15 testNonTrivialSubstitutions(); 15 testNonTrivialSubstitutions();
16 } 16 }
17 17
18 void testMixinSupertypes() { 18 void testMixinSupertypes() {
19 asyncTest(() => TypeEnvironment 19 asyncTest(() => TypeEnvironment.create(r"""
20 .create(
21 r"""
22 class S<S_T> {} 20 class S<S_T> {}
23 class M1<M1_T> {} 21 class M1<M1_T> {}
24 class M2<M2_T> {} 22 class M2<M2_T> {}
25 class M3<M3_T> {} 23 class M3<M3_T> {}
26 24
27 class C1<C1_T> extends S<C1_T> with M1<C1_T>, M2<C1_T>, M3<C1_T> {} 25 class C1<C1_T> extends S<C1_T> with M1<C1_T>, M2<C1_T>, M3<C1_T> {}
28 class C2<C2_T> = S<C2_T> with M1<C2_T>, M2<C2_T>, M3<C2_T>; 26 class C2<C2_T> = S<C2_T> with M1<C2_T>, M2<C2_T>, M3<C2_T>;
29 """, 27 """, expectNoWarningsOrErrors: true).then((env) {
30 expectNoWarningsOrErrors: true)
31 .then((env) {
32 ClassElement Object = env.getElement('Object'); 28 ClassElement Object = env.getElement('Object');
33 ClassElement S = env.getElement('S'); 29 ClassElement S = env.getElement('S');
34 ClassElement M1 = env.getElement('M1'); 30 ClassElement M1 = env.getElement('M1');
35 ClassElement M2 = env.getElement('M2'); 31 ClassElement M2 = env.getElement('M2');
36 ClassElement C1 = env.getElement('C1'); 32 ClassElement C1 = env.getElement('C1');
37 ClassElement C2 = env.getElement('C2'); 33 ClassElement C2 = env.getElement('C2');
38 34
39 ClassElement C1_S_M1_M2_M3 = C1.superclass; 35 ClassElement C1_S_M1_M2_M3 = C1.superclass;
40 ClassElement C1_S_M1_M2 = C1_S_M1_M2_M3.superclass; 36 ClassElement C1_S_M1_M2 = C1_S_M1_M2_M3.superclass;
41 ClassElement C1_S_M1 = C1_S_M1_M2.superclass; 37 ClassElement C1_S_M1 = C1_S_M1_M2.superclass;
(...skipping 26 matching lines...) Expand all
68 testSupertypes(C1_S_M1_M2); 64 testSupertypes(C1_S_M1_M2);
69 testSupertypes(C1_S_M1_M2_M3); 65 testSupertypes(C1_S_M1_M2_M3);
70 testSupertypes(C1); 66 testSupertypes(C1);
71 testSupertypes(C2_S_M1); 67 testSupertypes(C2_S_M1);
72 testSupertypes(C2_S_M1_M2); 68 testSupertypes(C2_S_M1_M2);
73 testSupertypes(C2); 69 testSupertypes(C2);
74 })); 70 }));
75 } 71 }
76 72
77 void testNonTrivialSubstitutions() { 73 void testNonTrivialSubstitutions() {
78 asyncTest(() => TypeEnvironment 74 asyncTest(() => TypeEnvironment.create(r"""
79 .create(
80 r"""
81 class _ {} 75 class _ {}
82 class A<A_T> {} 76 class A<A_T> {}
83 class B<B_T, B_S> {} 77 class B<B_T, B_S> {}
84 78
85 class C1<C1_T> extends A with B {} 79 class C1<C1_T> extends A with B {}
86 class C2<C2_T> = A with B; 80 class C2<C2_T> = A with B;
87 81
88 class D1<D1_T> extends A<D1_T> with B<D1_T, A<D1_T>> {} 82 class D1<D1_T> extends A<D1_T> with B<D1_T, A<D1_T>> {}
89 class D2<D2_T> = A<D2_T> with B<D2_T, A<D2_T>>; 83 class D2<D2_T> = A<D2_T> with B<D2_T, A<D2_T>>;
90 84
91 class E1<E1_T> extends A<_> with B<_, A<_>> {} 85 class E1<E1_T> extends A<_> with B<_, A<_>> {}
92 class E2<E2_T> = A<_> with B<_, A<_>>; 86 class E2<E2_T> = A<_> with B<_, A<_>>;
93 87
94 class F1<F1_T> extends A<_> with B<_, B<F1_T, _>> {} 88 class F1<F1_T> extends A<_> with B<_, B<F1_T, _>> {}
95 class F2<F2_T> = A<_> with B<_, B<F2_T, _>>; 89 class F2<F2_T> = A<_> with B<_, B<F2_T, _>>;
96 """, 90 """, expectNoWarningsOrErrors: true).then((env) {
97 expectNoWarningsOrErrors: true)
98 .then((env) {
99 ResolutionDartType _dynamic = env['dynamic']; 91 ResolutionDartType _dynamic = env['dynamic'];
100 ResolutionDartType _ = env['_']; 92 ResolutionDartType _ = env['_'];
101 93
102 ClassElement Object = env.getElement('Object'); 94 ClassElement Object = env.getElement('Object');
103 ClassElement A = env.getElement('A'); 95 ClassElement A = env.getElement('A');
104 ClassElement B = env.getElement('B'); 96 ClassElement B = env.getElement('B');
105 ClassElement C1 = env.getElement('C1'); 97 ClassElement C1 = env.getElement('C1');
106 ClassElement C2 = env.getElement('C2'); 98 ClassElement C2 = env.getElement('C2');
107 ClassElement D1 = env.getElement('D1'); 99 ClassElement D1 = env.getElement('D1');
108 ClassElement D2 = env.getElement('D2'); 100 ClassElement D2 = env.getElement('D2');
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 ResolutionDartType F2_T = F2.typeVariables.first; 205 ResolutionDartType F2_T = F2.typeVariables.first;
214 testSupertypes(F2, { 206 testSupertypes(F2, {
215 A: [_], 207 A: [_],
216 B: [ 208 B: [
217 _, 209 _,
218 instantiate(B, [F2_T, _]) 210 instantiate(B, [F2_T, _])
219 ] 211 ]
220 }); 212 });
221 })); 213 }));
222 } 214 }
OLDNEW
« no previous file with comments | « tests/compiler/dart2js/message_span_test.dart ('k') | tests/compiler/dart2js/no_such_method_enabled_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698