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

Side by Side Diff: tests/compiler/dart2js/simple_inferrer_test.dart

Issue 2955353002: Split inference type-info accessors into members, parameters and local functions (Closed)
Patch Set: Updated cf. comments Created 3 years, 5 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 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 718 matching lines...) Expand 10 before | Expand all | Expand 10 after
729 asyncTest(() => compiler.run(uri).then((_) { 729 asyncTest(() => compiler.run(uri).then((_) {
730 var typesInferrer = compiler.globalInference.typesInferrerInternal; 730 var typesInferrer = compiler.globalInference.typesInferrerInternal;
731 var closedWorld = typesInferrer.closedWorld; 731 var closedWorld = typesInferrer.closedWorld;
732 var commonMasks = closedWorld.commonMasks; 732 var commonMasks = closedWorld.commonMasks;
733 733
734 checkReturn(String name, type) { 734 checkReturn(String name, type) {
735 var element = findElement(compiler, name); 735 var element = findElement(compiler, name);
736 Expect.equals( 736 Expect.equals(
737 type, 737 type,
738 simplify( 738 simplify(
739 typesInferrer.getReturnTypeOfElement(element), closedWorld), 739 typesInferrer.getReturnTypeOfMember(element), closedWorld),
740 name); 740 name);
741 } 741 }
742 742
743 var interceptorType = commonMasks.interceptorType; 743 var interceptorType = commonMasks.interceptorType;
744 744
745 checkReturn('returnNum1', commonMasks.numType); 745 checkReturn('returnNum1', commonMasks.numType);
746 checkReturn('returnNum2', commonMasks.numType); 746 checkReturn('returnNum2', commonMasks.numType);
747 checkReturn('returnInt1', commonMasks.uint31Type); 747 checkReturn('returnInt1', commonMasks.uint31Type);
748 checkReturn('returnInt2', commonMasks.uint31Type); 748 checkReturn('returnInt2', commonMasks.uint31Type);
749 checkReturn('returnDouble', commonMasks.doubleType); 749 checkReturn('returnDouble', commonMasks.doubleType);
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
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 dynamic 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.getReturnTypeOfMember(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);
843 checkReturnInClass('A', 'returnInt3', commonMasks.uint32Type); 843 checkReturnInClass('A', 'returnInt3', commonMasks.uint32Type);
844 checkReturnInClass('A', 'returnInt4', commonMasks.uint32Type); 844 checkReturnInClass('A', 'returnInt4', commonMasks.uint32Type);
845 checkReturnInClass('A', 'returnInt5', commonMasks.uint32Type); 845 checkReturnInClass('A', 'returnInt5', commonMasks.uint32Type);
846 checkReturnInClass('A', 'returnInt6', commonMasks.uint32Type); 846 checkReturnInClass('A', 'returnInt6', commonMasks.uint32Type);
847 checkReturnInClass('A', '==', interceptorType); 847 checkReturnInClass('A', '==', interceptorType);
(...skipping 12 matching lines...) Expand all
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 dynamic 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.getReturnTypeOfMember(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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698