OLD | NEW |
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 import 'package:expect/expect.dart'; | 5 import 'package:expect/expect.dart'; |
6 import "package:async_helper/async_helper.dart"; | 6 import "package:async_helper/async_helper.dart"; |
7 import 'package:compiler/src/types/types.dart' show TypeMask; | 7 import 'package:compiler/src/types/types.dart' show TypeMask; |
8 import 'type_mask_test_helper.dart'; | 8 import 'type_mask_test_helper.dart'; |
9 | 9 |
10 import 'compiler_helper.dart'; | 10 import 'compiler_helper.dart'; |
(...skipping 811 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
822 checkReturn('testReturnElementOfConstList2', commonMasks.uint31Type); | 822 checkReturn('testReturnElementOfConstList2', commonMasks.uint31Type); |
823 checkReturn('testReturnItselfOrInt', commonMasks.uint31Type); | 823 checkReturn('testReturnItselfOrInt', commonMasks.uint31Type); |
824 checkReturn('testReturnInvokeDynamicGetter', commonMasks.dynamicType); | 824 checkReturn('testReturnInvokeDynamicGetter', commonMasks.dynamicType); |
825 | 825 |
826 checkReturn('testDoWhile1', commonMasks.stringType); | 826 checkReturn('testDoWhile1', commonMasks.stringType); |
827 checkReturn('testDoWhile2', commonMasks.nullType); | 827 checkReturn('testDoWhile2', commonMasks.nullType); |
828 checkReturn('testDoWhile3', commonMasks.uint31Type); | 828 checkReturn('testDoWhile3', commonMasks.uint31Type); |
829 checkReturn('testDoWhile4', commonMasks.numType); | 829 checkReturn('testDoWhile4', commonMasks.numType); |
830 | 830 |
831 checkReturnInClass(String className, String methodName, type) { | 831 checkReturnInClass(String className, String methodName, type) { |
832 var cls = findElement(compiler, className); | 832 dynamic cls = findElement(compiler, className); |
833 var element = cls.lookupLocalMember(methodName); | 833 var element = cls.lookupLocalMember(methodName); |
834 Expect.equals( | 834 Expect.equals( |
835 type, | 835 type, |
836 simplify( | 836 simplify( |
837 typesInferrer.getReturnTypeOfElement(element), closedWorld), | 837 typesInferrer.getReturnTypeOfElement(element), closedWorld), |
838 '$className:$methodName'); | 838 '$className:$methodName'); |
839 } | 839 } |
840 | 840 |
841 checkReturnInClass('A', 'returnInt1', commonMasks.uint32Type); | 841 checkReturnInClass('A', 'returnInt1', commonMasks.uint32Type); |
842 checkReturnInClass('A', 'returnInt2', commonMasks.uint32Type); | 842 checkReturnInClass('A', 'returnInt2', commonMasks.uint32Type); |
(...skipping 14 matching lines...) Expand all Loading... |
857 checkReturnInClass('B', 'returnInt9', commonMasks.uint31Type); | 857 checkReturnInClass('B', 'returnInt9', commonMasks.uint31Type); |
858 | 858 |
859 checkReturnInClass('C', 'returnInt1', commonMasks.positiveIntType); | 859 checkReturnInClass('C', 'returnInt1', commonMasks.positiveIntType); |
860 checkReturnInClass('C', 'returnInt2', commonMasks.positiveIntType); | 860 checkReturnInClass('C', 'returnInt2', commonMasks.positiveIntType); |
861 checkReturnInClass('C', 'returnInt3', commonMasks.positiveIntType); | 861 checkReturnInClass('C', 'returnInt3', commonMasks.positiveIntType); |
862 checkReturnInClass('C', 'returnInt4', commonMasks.positiveIntType); | 862 checkReturnInClass('C', 'returnInt4', commonMasks.positiveIntType); |
863 checkReturnInClass('C', 'returnInt5', commonMasks.positiveIntType); | 863 checkReturnInClass('C', 'returnInt5', commonMasks.positiveIntType); |
864 checkReturnInClass('C', 'returnInt6', commonMasks.positiveIntType); | 864 checkReturnInClass('C', 'returnInt6', commonMasks.positiveIntType); |
865 | 865 |
866 checkFactoryConstructor(String className, String factoryName) { | 866 checkFactoryConstructor(String className, String factoryName) { |
867 var cls = findElement(compiler, className); | 867 dynamic cls = findElement(compiler, className); |
868 var element = cls.localLookup(factoryName); | 868 var element = cls.localLookup(factoryName); |
869 Expect.equals(new TypeMask.nonNullExact(cls, closedWorld), | 869 Expect.equals(new TypeMask.nonNullExact(cls, closedWorld), |
870 typesInferrer.getReturnTypeOfElement(element)); | 870 typesInferrer.getReturnTypeOfElement(element)); |
871 } | 871 } |
872 | 872 |
873 checkFactoryConstructor('A', ''); | 873 checkFactoryConstructor('A', ''); |
874 | 874 |
875 checkReturn('testCascade1', commonMasks.growableListType); | 875 checkReturn('testCascade1', commonMasks.growableListType); |
876 ClassElement clsCascadeHelper = findElement(compiler, 'CascadeHelper'); | 876 ClassElement clsCascadeHelper = findElement(compiler, 'CascadeHelper'); |
877 checkReturn('testCascade2', | 877 checkReturn('testCascade2', |
878 new TypeMask.nonNullExact(clsCascadeHelper, closedWorld)); | 878 new TypeMask.nonNullExact(clsCascadeHelper, closedWorld)); |
879 checkReturn('testSpecialization1', commonMasks.numType); | 879 checkReturn('testSpecialization1', commonMasks.numType); |
880 checkReturn('testSpecialization2', commonMasks.dynamicType); | 880 checkReturn('testSpecialization2', commonMasks.dynamicType); |
881 checkReturn('testSpecialization3', commonMasks.uint31Type.nullable()); | 881 checkReturn('testSpecialization3', commonMasks.uint31Type.nullable()); |
882 checkReturn('testReturnNull1', commonMasks.nullType); | 882 checkReturn('testReturnNull1', commonMasks.nullType); |
883 checkReturn('testReturnNull2', commonMasks.nullType); | 883 checkReturn('testReturnNull2', commonMasks.nullType); |
884 checkReturn('testReturnNull3', commonMasks.dynamicType); | 884 checkReturn('testReturnNull3', commonMasks.dynamicType); |
885 checkReturn('testReturnNull4', commonMasks.nullType); | 885 checkReturn('testReturnNull4', commonMasks.nullType); |
886 checkReturn('testReturnNull5', commonMasks.nullType); | 886 checkReturn('testReturnNull5', commonMasks.nullType); |
887 checkReturn('testReturnNull6', commonMasks.dynamicType); | 887 checkReturn('testReturnNull6', commonMasks.dynamicType); |
888 checkReturn('testReturnNotEquals', commonMasks.boolType); | 888 checkReturn('testReturnNotEquals', commonMasks.boolType); |
889 })); | 889 })); |
890 } | 890 } |
OLD | NEW |