OLD | NEW |
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 dart2js.serialization.class_members_test; | 5 library dart2js.serialization.class_members_test; |
6 | 6 |
7 import 'dart:async'; | 7 import 'dart:async'; |
8 import 'package:async_helper/async_helper.dart'; | 8 import 'package:async_helper/async_helper.dart'; |
9 import 'package:compiler/src/common/names.dart'; | 9 import 'package:compiler/src/common/names.dart'; |
10 import 'package:compiler/src/commandline_options.dart'; | 10 import 'package:compiler/src/commandline_options.dart'; |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 } | 50 } |
51 | 51 |
52 void checkAllMembers(Compiler compiler1, Compiler compiler2, | 52 void checkAllMembers(Compiler compiler1, Compiler compiler2, |
53 {bool verbose: false}) { | 53 {bool verbose: false}) { |
54 checkLoadedLibraryMembers(compiler1, compiler2, | 54 checkLoadedLibraryMembers(compiler1, compiler2, |
55 (Element member1) => member1 is ClassElement, checkMembers, | 55 (Element member1) => member1 is ClassElement, checkMembers, |
56 verbose: verbose); | 56 verbose: verbose); |
57 } | 57 } |
58 | 58 |
59 /// Check equivalence of members of [class1] and [class2]. | 59 /// Check equivalence of members of [class1] and [class2]. |
60 void checkMembers(Compiler compiler1, ClassMemberMixin class1, | 60 void checkMembers( |
61 Compiler compiler2, ClassMemberMixin class2, | 61 Compiler compiler1, Element _class1, Compiler compiler2, Element _class2, |
62 {bool verbose: false}) { | 62 {bool verbose: false}) { |
| 63 ClassMemberMixin class1 = _class1; |
| 64 ClassMemberMixin class2 = _class2; |
63 if (verbose) { | 65 if (verbose) { |
64 print('Checking $class1 vs $class2'); | 66 print('Checking $class1 vs $class2'); |
65 } | 67 } |
66 MembersCreator.computeAllClassMembers(compiler1.resolution, class1); | 68 MembersCreator.computeAllClassMembers(compiler1.resolution, class1); |
67 MembersCreator.computeAllClassMembers(compiler2.resolution, class2); | 69 MembersCreator.computeAllClassMembers(compiler2.resolution, class2); |
68 | 70 |
69 check( | 71 check( |
70 class1, | 72 class1, |
71 class2, | 73 class2, |
72 'interfaceMemberAreClassMembers', | 74 'interfaceMemberAreClassMembers', |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
141 areTypesEquivalent); | 143 areTypesEquivalent); |
142 check(class1, class2, '$property.functionType', member1.functionType, | 144 check(class1, class2, '$property.functionType', member1.functionType, |
143 member2.functionType, areTypesEquivalent); | 145 member2.functionType, areTypesEquivalent); |
144 check( | 146 check( |
145 class1, class2, '$property.isGetter', member1.isGetter, member2.isGetter); | 147 class1, class2, '$property.isGetter', member1.isGetter, member2.isGetter); |
146 check( | 148 check( |
147 class1, class2, '$property.isSetter', member1.isSetter, member2.isSetter); | 149 class1, class2, '$property.isSetter', member1.isSetter, member2.isSetter); |
148 check( | 150 check( |
149 class1, class2, '$property.isMethod', member1.isMethod, member2.isMethod); | 151 class1, class2, '$property.isMethod', member1.isMethod, member2.isMethod); |
150 } | 152 } |
OLD | NEW |