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

Side by Side Diff: tests/lib_strong/mirrors/generic_function_typedef_test.dart

Issue 2771453003: Format all tests. (Closed)
Patch Set: Format files Created 3 years, 8 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 test.generic_function_typedef; 5 library test.generic_function_typedef;
6 6
7 import 'dart:mirrors'; 7 import 'dart:mirrors';
8 8
9 import 'package:expect/expect.dart'; 9 import 'package:expect/expect.dart';
10 10
11 import 'generics_helper.dart'; 11 import 'generics_helper.dart';
12 12
13 typedef bool NonGenericPredicate(num n); 13 typedef bool NonGenericPredicate(num n);
14 typedef bool GenericPredicate<T>(T t); 14 typedef bool GenericPredicate<T>(T t);
15 typedef S GenericTransform<S>(S s); 15 typedef S GenericTransform<S>(S s);
16 16
17 class C<R> { 17 class C<R> {
18 GenericPredicate<num> predicateOfNum; 18 GenericPredicate<num> predicateOfNum;
19 GenericTransform<String> transformOfString; 19 GenericTransform<String> transformOfString;
20 GenericTransform<R> transformOfR; 20 GenericTransform<R> transformOfR;
21 } 21 }
22 22
23 reflectTypeDeclaration(t) => reflectType(t).originalDeclaration; 23 reflectTypeDeclaration(t) => reflectType(t).originalDeclaration;
24 24
25 main() { 25 main() {
26 TypeMirror dynamicMirror = currentMirrorSystem().dynamicType; 26 TypeMirror dynamicMirror = currentMirrorSystem().dynamicType;
27 27
28 TypedefMirror predicateOfNum = (reflectClass(C).declarations[#predicateOfNum] as VariableMirror).type; 28 TypedefMirror predicateOfNum =
29 TypedefMirror transformOfString = (reflectClass(C).declarations[#transformOfSt ring] as VariableMirror).type; 29 (reflectClass(C).declarations[#predicateOfNum] as VariableMirror).type;
30 TypedefMirror transformOfR = (reflectClass(C).declarations[#transformOfR] as V ariableMirror).type; 30 TypedefMirror transformOfString =
31 TypedefMirror transformOfDouble = (reflect(new C<double>()).type.declarations[ #transformOfR] as VariableMirror).type; 31 (reflectClass(C).declarations[#transformOfString] as VariableMirror).type;
32 TypedefMirror transformOfR =
33 (reflectClass(C).declarations[#transformOfR] as VariableMirror).type;
34 TypedefMirror transformOfDouble = (reflect(new C<double>())
35 .type
36 .declarations[#transformOfR] as VariableMirror)
37 .type;
32 38
33 TypeVariableMirror tFromGenericPredicate = reflectTypeDeclaration(GenericPredi cate).typeVariables[0]; 39 TypeVariableMirror tFromGenericPredicate =
34 TypeVariableMirror sFromGenericTransform = reflectTypeDeclaration(GenericTrans form).typeVariables[0]; 40 reflectTypeDeclaration(GenericPredicate).typeVariables[0];
41 TypeVariableMirror sFromGenericTransform =
42 reflectTypeDeclaration(GenericTransform).typeVariables[0];
35 TypeVariableMirror rFromC = reflectClass(C).typeVariables[0]; 43 TypeVariableMirror rFromC = reflectClass(C).typeVariables[0];
36 44
37 // Typedefs. 45 // Typedefs.
38 typeParameters(reflectTypeDeclaration(NonGenericPredicate), []); 46 typeParameters(reflectTypeDeclaration(NonGenericPredicate), []);
39 typeParameters(reflectTypeDeclaration(GenericPredicate), [#T]); 47 typeParameters(reflectTypeDeclaration(GenericPredicate), [#T]);
40 typeParameters(reflectTypeDeclaration(GenericTransform), [#S]); 48 typeParameters(reflectTypeDeclaration(GenericTransform), [#S]);
41 typeParameters(predicateOfNum, [#T]); 49 typeParameters(predicateOfNum, [#T]);
42 typeParameters(transformOfString, [#S]); 50 typeParameters(transformOfString, [#S]);
43 typeParameters(transformOfR, [#S]); 51 typeParameters(transformOfR, [#S]);
44 typeParameters(transformOfDouble, [#S]); 52 typeParameters(transformOfDouble, [#S]);
45 53
46 typeArguments(reflectTypeDeclaration(NonGenericPredicate), []); 54 typeArguments(reflectTypeDeclaration(NonGenericPredicate), []);
47 typeArguments(reflectTypeDeclaration(GenericPredicate), []); 55 typeArguments(reflectTypeDeclaration(GenericPredicate), []);
48 typeArguments(reflectTypeDeclaration(GenericTransform), []); 56 typeArguments(reflectTypeDeclaration(GenericTransform), []);
49 typeArguments(predicateOfNum, [reflectClass(num)]); 57 typeArguments(predicateOfNum, [reflectClass(num)]);
50 typeArguments(transformOfString, [reflectClass(String)]); 58 typeArguments(transformOfString, [reflectClass(String)]);
51 typeArguments(transformOfR, [rFromC]); 59 typeArguments(transformOfR, [rFromC]);
52 typeArguments(transformOfDouble, [reflectClass(double)]); 60 typeArguments(transformOfDouble, [reflectClass(double)]);
53 61
54 Expect.isTrue(reflectTypeDeclaration(NonGenericPredicate).isOriginalDeclaratio n); 62 Expect.isTrue(
63 reflectTypeDeclaration(NonGenericPredicate).isOriginalDeclaration);
55 Expect.isTrue(reflectTypeDeclaration(GenericPredicate).isOriginalDeclaration); 64 Expect.isTrue(reflectTypeDeclaration(GenericPredicate).isOriginalDeclaration);
56 Expect.isTrue(reflectTypeDeclaration(GenericTransform).isOriginalDeclaration); 65 Expect.isTrue(reflectTypeDeclaration(GenericTransform).isOriginalDeclaration);
57 Expect.isFalse(predicateOfNum.isOriginalDeclaration); 66 Expect.isFalse(predicateOfNum.isOriginalDeclaration);
58 Expect.isFalse(transformOfString.isOriginalDeclaration); 67 Expect.isFalse(transformOfString.isOriginalDeclaration);
59 Expect.isFalse(transformOfR.isOriginalDeclaration); 68 Expect.isFalse(transformOfR.isOriginalDeclaration);
60 Expect.isFalse(transformOfDouble.isOriginalDeclaration); 69 Expect.isFalse(transformOfDouble.isOriginalDeclaration);
61 70
62 // Function types. 71 // Function types.
63 typeParameters(reflectTypeDeclaration(NonGenericPredicate).referent, []); 72 typeParameters(reflectTypeDeclaration(NonGenericPredicate).referent, []);
64 typeParameters(reflectTypeDeclaration(GenericPredicate).referent, []); 73 typeParameters(reflectTypeDeclaration(GenericPredicate).referent, []);
65 typeParameters(reflectTypeDeclaration(GenericTransform).referent, []); 74 typeParameters(reflectTypeDeclaration(GenericTransform).referent, []);
66 typeParameters(predicateOfNum.referent, []); 75 typeParameters(predicateOfNum.referent, []);
67 typeParameters(transformOfString.referent, []); 76 typeParameters(transformOfString.referent, []);
68 typeParameters(transformOfR.referent, []); 77 typeParameters(transformOfR.referent, []);
69 typeParameters(transformOfDouble.referent, []); 78 typeParameters(transformOfDouble.referent, []);
70 79
71 typeArguments(reflectTypeDeclaration(NonGenericPredicate).referent, []); 80 typeArguments(reflectTypeDeclaration(NonGenericPredicate).referent, []);
72 typeArguments(reflectTypeDeclaration(GenericPredicate).referent, []); 81 typeArguments(reflectTypeDeclaration(GenericPredicate).referent, []);
73 typeArguments(reflectTypeDeclaration(GenericTransform).referent, []); 82 typeArguments(reflectTypeDeclaration(GenericTransform).referent, []);
74 typeArguments(predicateOfNum.referent, []); 83 typeArguments(predicateOfNum.referent, []);
75 typeArguments(transformOfString.referent, []); 84 typeArguments(transformOfString.referent, []);
76 typeArguments(transformOfR.referent, []); 85 typeArguments(transformOfR.referent, []);
77 typeArguments(transformOfDouble.referent, []); 86 typeArguments(transformOfDouble.referent, []);
78 87
79 // Function types are always non-generic. Only the typedef is generic. 88 // Function types are always non-generic. Only the typedef is generic.
80 Expect.isTrue(reflectTypeDeclaration(NonGenericPredicate).referent.isOriginalD eclaration); 89 Expect.isTrue(reflectTypeDeclaration(NonGenericPredicate)
81 Expect.isTrue(reflectTypeDeclaration(GenericPredicate).referent.isOriginalDecl aration); 90 .referent
82 Expect.isTrue(reflectTypeDeclaration(GenericTransform).referent.isOriginalDecl aration); 91 .isOriginalDeclaration);
83 Expect.isTrue(predicateOfNum.referent.isOriginalDeclaration); 92 Expect.isTrue(
84 Expect.isTrue(transformOfString.referent.isOriginalDeclaration); 93 reflectTypeDeclaration(GenericPredicate).referent.isOriginalDeclaration);
94 Expect.isTrue(
95 reflectTypeDeclaration(GenericTransform).referent.isOriginalDeclaration);
96 Expect.isTrue(predicateOfNum.referent.isOriginalDeclaration);
97 Expect.isTrue(transformOfString.referent.isOriginalDeclaration);
85 Expect.isTrue(transformOfR.referent.isOriginalDeclaration); 98 Expect.isTrue(transformOfR.referent.isOriginalDeclaration);
86 Expect.isTrue(transformOfDouble.referent.isOriginalDeclaration); 99 Expect.isTrue(transformOfDouble.referent.isOriginalDeclaration);
87 100
88 Expect.equals(reflectClass(num), 101 Expect.equals(reflectClass(num),
89 reflectTypeDeclaration(NonGenericPredicate).referent.parameters[ 0].type); 102 reflectTypeDeclaration(NonGenericPredicate).referent.parameters[0].type);
90 Expect.equals(tFromGenericPredicate, 103 Expect.equals(tFromGenericPredicate,
91 reflectTypeDeclaration(GenericPredicate).referent.parameters[0]. type); 104 reflectTypeDeclaration(GenericPredicate).referent.parameters[0].type);
92 Expect.equals(sFromGenericTransform, 105 Expect.equals(sFromGenericTransform,
93 reflectTypeDeclaration(GenericTransform).referent.parameters[0]. type); 106 reflectTypeDeclaration(GenericTransform).referent.parameters[0].type);
94 107
95 Expect.equals(reflectClass(num), 108 Expect.equals(reflectClass(num), predicateOfNum.referent.parameters[0].type);
96 predicateOfNum.referent.parameters[0].type); 109 Expect.equals(
97 Expect.equals(reflectClass(String), 110 reflectClass(String), transformOfString.referent.parameters[0].type);
98 transformOfString.referent.parameters[0].type); 111 Expect.equals(rFromC, transformOfR.referent.parameters[0].type);
99 Expect.equals(rFromC, 112 Expect.equals(
100 transformOfR.referent.parameters[0].type); 113 reflectClass(double), transformOfDouble.referent.parameters[0].type);
101 Expect.equals(reflectClass(double),
102 transformOfDouble.referent.parameters[0].type);
103 114
104 Expect.equals(reflectClass(bool), 115 Expect.equals(reflectClass(bool),
105 reflectTypeDeclaration(NonGenericPredicate).referent.returnType) ; 116 reflectTypeDeclaration(NonGenericPredicate).referent.returnType);
106 Expect.equals(reflectClass(bool), 117 Expect.equals(reflectClass(bool),
107 reflectTypeDeclaration(GenericPredicate).referent.returnType); 118 reflectTypeDeclaration(GenericPredicate).referent.returnType);
108 Expect.equals(sFromGenericTransform, 119 Expect.equals(sFromGenericTransform,
109 reflectTypeDeclaration(GenericTransform).referent.returnType); 120 reflectTypeDeclaration(GenericTransform).referent.returnType);
110 Expect.equals(reflectClass(bool), 121 Expect.equals(reflectClass(bool), predicateOfNum.referent.returnType);
111 predicateOfNum.referent.returnType); 122 Expect.equals(reflectClass(String), transformOfString.referent.returnType);
112 Expect.equals(reflectClass(String), 123 Expect.equals(rFromC, transformOfR.referent.returnType);
113 transformOfString.referent.returnType); 124 Expect.equals(reflectClass(double), transformOfDouble.referent.returnType);
114 Expect.equals(rFromC,
115 transformOfR.referent.returnType);
116 Expect.equals(reflectClass(double),
117 transformOfDouble.referent.returnType);
118 } 125 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698