| OLD | NEW | 
|    1 // Copyright (c) 2015, the Dart project authors.  Please see the AUTHORS file |    1 // Copyright (c) 2015, 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_test; |    5 library dart2js.serialization_test; | 
|    6  |    6  | 
|    7 import 'dart:io'; |    7 import 'dart:io'; | 
|    8 import '../memory_compiler.dart'; |    8 import '../memory_compiler.dart'; | 
|    9 import 'package:async_helper/async_helper.dart'; |    9 import 'package:async_helper/async_helper.dart'; | 
|   10 import 'package:compiler/src/commandline_options.dart'; |   10 import 'package:compiler/src/commandline_options.dart'; | 
| (...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  280     check(element1, element2, 'isAbstract', |  280     check(element1, element2, 'isAbstract', | 
|  281         element1.isAbstract, element2.isAbstract); |  281         element1.isAbstract, element2.isAbstract); | 
|  282     check(element1, element2, 'isStatic', |  282     check(element1, element2, 'isStatic', | 
|  283         element1.isStatic, element2.isStatic); |  283         element1.isStatic, element2.isStatic); | 
|  284     check(element1, element2, 'isTopLevel', |  284     check(element1, element2, 'isTopLevel', | 
|  285         element1.isTopLevel, element2.isTopLevel); |  285         element1.isTopLevel, element2.isTopLevel); | 
|  286     check(element1, element2, 'isClassMember', |  286     check(element1, element2, 'isClassMember', | 
|  287         element1.isClassMember, element2.isClassMember); |  287         element1.isClassMember, element2.isClassMember); | 
|  288     check(element1, element2, 'isInstanceMember', |  288     check(element1, element2, 'isInstanceMember', | 
|  289         element1.isInstanceMember, element2.isInstanceMember); |  289         element1.isInstanceMember, element2.isInstanceMember); | 
 |  290     List<MetadataAnnotation> metadata1 = <MetadataAnnotation>[]; | 
 |  291     metadata1.addAll(element1.metadata); | 
 |  292     if (element1.isPatched) { | 
 |  293       metadata1.addAll(element1.implementation.metadata); | 
 |  294     } | 
 |  295     List<MetadataAnnotation> metadata2 = <MetadataAnnotation>[]; | 
 |  296     metadata2.addAll(element2.metadata); | 
 |  297     if (element2.isPatched) { | 
 |  298       metadata2.addAll(element2.implementation.metadata); | 
 |  299     } | 
|  290     checkListEquivalence(element1, element2, 'metadata', |  300     checkListEquivalence(element1, element2, 'metadata', | 
|  291         element1.metadata, element2.metadata, checkMetadata); |  301         metadata1, metadata2, checkMetadata); | 
|  292   } |  302   } | 
|  293  |  303  | 
|  294   @override |  304   @override | 
|  295   void visitElement(Element e, Element arg) { |  305   void visitElement(Element e, Element arg) { | 
|  296     throw new UnsupportedError("Unsupported element $e"); |  306     throw new UnsupportedError("Unsupported element $e"); | 
|  297   } |  307   } | 
|  298  |  308  | 
|  299   @override |  309   @override | 
|  300   void visitLibraryElement(LibraryElement element1, LibraryElement element2) { |  310   void visitLibraryElement(LibraryElement element1, LibraryElement element2) { | 
|  301     checkElementIdentities(null, null, null, element1, element2); |  311     checkElementIdentities(null, null, null, element1, element2); | 
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  387         String message = |  397         String message = | 
|  388             'Missing member for $member1 in\n ${members2.join('\n ')}'; |  398             'Missing member for $member1 in\n ${members2.join('\n ')}'; | 
|  389         if (member1.isAbstractField) { |  399         if (member1.isAbstractField) { | 
|  390           // TODO(johnniwinther): Ensure abstract fields are handled correctly. |  400           // TODO(johnniwinther): Ensure abstract fields are handled correctly. | 
|  391           //print(message); |  401           //print(message); | 
|  392           continue; |  402           continue; | 
|  393         } else { |  403         } else { | 
|  394           throw message; |  404           throw message; | 
|  395         } |  405         } | 
|  396       } |  406       } | 
|  397       currentCheck = new Check(currentCheck, element1, element1, |  407       currentCheck = new Check(currentCheck, element1, element2, | 
|  398           'member:$name', member1, member2); |  408           'member:$name', member1, member2); | 
|  399       visit(member1, member2); |  409       visit(member1, member2); | 
|  400       currentCheck = currentCheck.parent; |  410       currentCheck = currentCheck.parent; | 
|  401     } |  411     } | 
|  402   } |  412   } | 
|  403  |  413  | 
|  404   @override |  414   @override | 
|  405   void visitClassElement(ClassElement element1, ClassElement element2) { |  415   void visitClassElement(ClassElement element1, ClassElement element2) { | 
|  406     checkElementIdentities(null, null, null, element1, element2); |  416     checkElementIdentities(null, null, null, element1, element2); | 
|  407     check(element1, element2, 'name', |  417     check(element1, element2, 'name', | 
| (...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  786   void visitPrefixElement(PrefixElement element1, PrefixElement element2) { |  796   void visitPrefixElement(PrefixElement element1, PrefixElement element2) { | 
|  787     check( |  797     check( | 
|  788         element1, element2, 'isDeferred', |  798         element1, element2, 'isDeferred', | 
|  789         element1.isDeferred, element2.isDeferred); |  799         element1.isDeferred, element2.isDeferred); | 
|  790     checkElementIdentities( |  800     checkElementIdentities( | 
|  791         element1, element2, 'importedLibrary', |  801         element1, element2, 'importedLibrary', | 
|  792         element1.deferredImport, element2.deferredImport); |  802         element1.deferredImport, element2.deferredImport); | 
|  793     // TODO(johnniwinther): Check members. |  803     // TODO(johnniwinther): Check members. | 
|  794   } |  804   } | 
|  795 } |  805 } | 
| OLD | NEW |