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 analyzer.test.generated.non_hint_code_test; | 5 library analyzer.test.generated.non_hint_code_test; |
6 | 6 |
7 import 'package:analyzer/error/error.dart'; | 7 import 'package:analyzer/error/error.dart'; |
8 import 'package:analyzer/src/error/codes.dart'; | 8 import 'package:analyzer/src/error/codes.dart'; |
9 import 'package:analyzer/src/generated/engine.dart'; | 9 import 'package:analyzer/src/generated/engine.dart'; |
10 import 'package:analyzer/src/generated/source_io.dart'; | 10 import 'package:analyzer/src/generated/source_io.dart'; |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
95 verify([source]); | 95 verify([source]); |
96 } | 96 } |
97 | 97 |
98 test_deadCode_deadBlock_if_debugConst_prefixedIdentifier2() async { | 98 test_deadCode_deadBlock_if_debugConst_prefixedIdentifier2() async { |
99 Source source = addSource(r''' | 99 Source source = addSource(r''' |
100 library L; | 100 library L; |
101 import 'lib2.dart'; | 101 import 'lib2.dart'; |
102 f() { | 102 f() { |
103 if(A.DEBUG) {} | 103 if(A.DEBUG) {} |
104 }'''); | 104 }'''); |
105 addNamedSource( | 105 addNamedSource("/lib2.dart", r''' |
106 "/lib2.dart", | |
107 r''' | |
108 library lib2; | 106 library lib2; |
109 class A { | 107 class A { |
110 static const bool DEBUG = false; | 108 static const bool DEBUG = false; |
111 }'''); | 109 }'''); |
112 await computeAnalysisResult(source); | 110 await computeAnalysisResult(source); |
113 assertNoErrors(source); | 111 assertNoErrors(source); |
114 verify([source]); | 112 verify([source]); |
115 } | 113 } |
116 | 114 |
117 test_deadCode_deadBlock_if_debugConst_propertyAccessor() async { | 115 test_deadCode_deadBlock_if_debugConst_propertyAccessor() async { |
118 Source source = addSource(r''' | 116 Source source = addSource(r''' |
119 library L; | 117 library L; |
120 import 'lib2.dart' as LIB; | 118 import 'lib2.dart' as LIB; |
121 f() { | 119 f() { |
122 if(LIB.A.DEBUG) {} | 120 if(LIB.A.DEBUG) {} |
123 }'''); | 121 }'''); |
124 addNamedSource( | 122 addNamedSource("/lib2.dart", r''' |
125 "/lib2.dart", | |
126 r''' | |
127 library lib2; | 123 library lib2; |
128 class A { | 124 class A { |
129 static const bool DEBUG = false; | 125 static const bool DEBUG = false; |
130 }'''); | 126 }'''); |
131 await computeAnalysisResult(source); | 127 await computeAnalysisResult(source); |
132 assertNoErrors(source); | 128 assertNoErrors(source); |
133 verify([source]); | 129 verify([source]); |
134 } | 130 } |
135 | 131 |
136 test_deadCode_deadBlock_if_debugConst_simpleIdentifier() async { | 132 test_deadCode_deadBlock_if_debugConst_simpleIdentifier() async { |
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
341 verify([source]); | 337 verify([source]); |
342 } | 338 } |
343 | 339 |
344 test_duplicateImport_as() async { | 340 test_duplicateImport_as() async { |
345 Source source = addSource(r''' | 341 Source source = addSource(r''' |
346 library L; | 342 library L; |
347 import 'lib1.dart'; | 343 import 'lib1.dart'; |
348 import 'lib1.dart' as one; | 344 import 'lib1.dart' as one; |
349 A a; | 345 A a; |
350 one.A a2;'''); | 346 one.A a2;'''); |
351 addNamedSource( | 347 addNamedSource("/lib1.dart", r''' |
352 "/lib1.dart", | |
353 r''' | |
354 library lib1; | 348 library lib1; |
355 class A {}'''); | 349 class A {}'''); |
356 await computeAnalysisResult(source); | 350 await computeAnalysisResult(source); |
357 assertNoErrors(source); | 351 assertNoErrors(source); |
358 verify([source]); | 352 verify([source]); |
359 } | 353 } |
360 | 354 |
361 test_duplicateImport_hide() async { | 355 test_duplicateImport_hide() async { |
362 Source source = addSource(r''' | 356 Source source = addSource(r''' |
363 library L; | 357 library L; |
364 import 'lib1.dart'; | 358 import 'lib1.dart'; |
365 import 'lib1.dart' hide A; | 359 import 'lib1.dart' hide A; |
366 A a; | 360 A a; |
367 B b;'''); | 361 B b;'''); |
368 addNamedSource( | 362 addNamedSource("/lib1.dart", r''' |
369 "/lib1.dart", | |
370 r''' | |
371 library lib1; | 363 library lib1; |
372 class A {} | 364 class A {} |
373 class B {}'''); | 365 class B {}'''); |
374 await computeAnalysisResult(source); | 366 await computeAnalysisResult(source); |
375 assertNoErrors(source); | 367 assertNoErrors(source); |
376 verify([source]); | 368 verify([source]); |
377 } | 369 } |
378 | 370 |
379 test_duplicateImport_show() async { | 371 test_duplicateImport_show() async { |
380 Source source = addSource(r''' | 372 Source source = addSource(r''' |
381 library L; | 373 library L; |
382 import 'lib1.dart'; | 374 import 'lib1.dart'; |
383 import 'lib1.dart' show A; | 375 import 'lib1.dart' show A; |
384 A a; | 376 A a; |
385 B b;'''); | 377 B b;'''); |
386 addNamedSource( | 378 addNamedSource("/lib1.dart", r''' |
387 "/lib1.dart", | |
388 r''' | |
389 library lib1; | 379 library lib1; |
390 class A {} | 380 class A {} |
391 class B {}'''); | 381 class B {}'''); |
392 await computeAnalysisResult(source); | 382 await computeAnalysisResult(source); |
393 assertNoErrors(source); | 383 assertNoErrors(source); |
394 verify([source]); | 384 verify([source]); |
395 } | 385 } |
396 | 386 |
397 test_importDeferredLibraryWithLoadFunction() async { | 387 test_importDeferredLibraryWithLoadFunction() async { |
398 await resolveWithErrors(<String>[ | 388 await resolveWithErrors(<String>[ |
(...skipping 652 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1051 await computeAnalysisResult(source); | 1041 await computeAnalysisResult(source); |
1052 assertNoErrors(source); | 1042 assertNoErrors(source); |
1053 verify([source]); | 1043 verify([source]); |
1054 } | 1044 } |
1055 | 1045 |
1056 test_unusedImport_annotationOnDirective() async { | 1046 test_unusedImport_annotationOnDirective() async { |
1057 Source source = addSource(r''' | 1047 Source source = addSource(r''' |
1058 library L; | 1048 library L; |
1059 @A() | 1049 @A() |
1060 import 'lib1.dart';'''); | 1050 import 'lib1.dart';'''); |
1061 Source source2 = addNamedSource( | 1051 Source source2 = addNamedSource("/lib1.dart", r''' |
1062 "/lib1.dart", | |
1063 r''' | |
1064 library lib1; | 1052 library lib1; |
1065 class A { | 1053 class A { |
1066 const A() {} | 1054 const A() {} |
1067 }'''); | 1055 }'''); |
1068 await computeAnalysisResult(source); | 1056 await computeAnalysisResult(source); |
1069 await computeAnalysisResult(source2); | 1057 await computeAnalysisResult(source2); |
1070 assertErrors(source); | 1058 assertErrors(source); |
1071 verify([source, source2]); | 1059 verify([source, source2]); |
1072 } | 1060 } |
1073 | 1061 |
1074 test_unusedImport_as_equalPrefixes() async { | 1062 test_unusedImport_as_equalPrefixes() async { |
1075 // 18818 | 1063 // 18818 |
1076 Source source = addSource(r''' | 1064 Source source = addSource(r''' |
1077 library L; | 1065 library L; |
1078 import 'lib1.dart' as one; | 1066 import 'lib1.dart' as one; |
1079 import 'lib2.dart' as one; | 1067 import 'lib2.dart' as one; |
1080 one.A a; | 1068 one.A a; |
1081 one.B b;'''); | 1069 one.B b;'''); |
1082 Source source2 = addNamedSource( | 1070 Source source2 = addNamedSource("/lib1.dart", r''' |
1083 "/lib1.dart", | |
1084 r''' | |
1085 library lib1; | 1071 library lib1; |
1086 class A {}'''); | 1072 class A {}'''); |
1087 Source source3 = addNamedSource( | 1073 Source source3 = addNamedSource("/lib2.dart", r''' |
1088 "/lib2.dart", | |
1089 r''' | |
1090 library lib2; | 1074 library lib2; |
1091 class B {}'''); | 1075 class B {}'''); |
1092 await computeAnalysisResult(source); | 1076 await computeAnalysisResult(source); |
1093 await computeAnalysisResult(source2); | 1077 await computeAnalysisResult(source2); |
1094 await computeAnalysisResult(source3); | 1078 await computeAnalysisResult(source3); |
1095 assertErrors(source); | 1079 assertErrors(source); |
1096 assertNoErrors(source2); | 1080 assertNoErrors(source2); |
1097 assertNoErrors(source3); | 1081 assertNoErrors(source3); |
1098 verify([source, source2, source3]); | 1082 verify([source, source2, source3]); |
1099 } | 1083 } |
1100 | 1084 |
1101 test_unusedImport_core_library() async { | 1085 test_unusedImport_core_library() async { |
1102 Source source = addSource(r''' | 1086 Source source = addSource(r''' |
1103 library L; | 1087 library L; |
1104 import 'dart:core';'''); | 1088 import 'dart:core';'''); |
1105 await computeAnalysisResult(source); | 1089 await computeAnalysisResult(source); |
1106 assertNoErrors(source); | 1090 assertNoErrors(source); |
1107 verify([source]); | 1091 verify([source]); |
1108 } | 1092 } |
1109 | 1093 |
1110 test_unusedImport_export() async { | 1094 test_unusedImport_export() async { |
1111 Source source = addSource(r''' | 1095 Source source = addSource(r''' |
1112 library L; | 1096 library L; |
1113 import 'lib1.dart'; | 1097 import 'lib1.dart'; |
1114 Two two;'''); | 1098 Two two;'''); |
1115 addNamedSource( | 1099 addNamedSource("/lib1.dart", r''' |
1116 "/lib1.dart", | |
1117 r''' | |
1118 library lib1; | 1100 library lib1; |
1119 export 'lib2.dart'; | 1101 export 'lib2.dart'; |
1120 class One {}'''); | 1102 class One {}'''); |
1121 addNamedSource( | 1103 addNamedSource("/lib2.dart", r''' |
1122 "/lib2.dart", | |
1123 r''' | |
1124 library lib2; | 1104 library lib2; |
1125 class Two {}'''); | 1105 class Two {}'''); |
1126 await computeAnalysisResult(source); | 1106 await computeAnalysisResult(source); |
1127 assertNoErrors(source); | 1107 assertNoErrors(source); |
1128 verify([source]); | 1108 verify([source]); |
1129 } | 1109 } |
1130 | 1110 |
1131 test_unusedImport_export2() async { | 1111 test_unusedImport_export2() async { |
1132 Source source = addSource(r''' | 1112 Source source = addSource(r''' |
1133 library L; | 1113 library L; |
1134 import 'lib1.dart'; | 1114 import 'lib1.dart'; |
1135 Three three;'''); | 1115 Three three;'''); |
1136 addNamedSource( | 1116 addNamedSource("/lib1.dart", r''' |
1137 "/lib1.dart", | |
1138 r''' | |
1139 library lib1; | 1117 library lib1; |
1140 export 'lib2.dart'; | 1118 export 'lib2.dart'; |
1141 class One {}'''); | 1119 class One {}'''); |
1142 addNamedSource( | 1120 addNamedSource("/lib2.dart", r''' |
1143 "/lib2.dart", | |
1144 r''' | |
1145 library lib2; | 1121 library lib2; |
1146 export 'lib3.dart'; | 1122 export 'lib3.dart'; |
1147 class Two {}'''); | 1123 class Two {}'''); |
1148 addNamedSource( | 1124 addNamedSource("/lib3.dart", r''' |
1149 "/lib3.dart", | |
1150 r''' | |
1151 library lib3; | 1125 library lib3; |
1152 class Three {}'''); | 1126 class Three {}'''); |
1153 await computeAnalysisResult(source); | 1127 await computeAnalysisResult(source); |
1154 assertNoErrors(source); | 1128 assertNoErrors(source); |
1155 verify([source]); | 1129 verify([source]); |
1156 } | 1130 } |
1157 | 1131 |
1158 test_unusedImport_export_infiniteLoop() async { | 1132 test_unusedImport_export_infiniteLoop() async { |
1159 Source source = addSource(r''' | 1133 Source source = addSource(r''' |
1160 library L; | 1134 library L; |
1161 import 'lib1.dart'; | 1135 import 'lib1.dart'; |
1162 Two two;'''); | 1136 Two two;'''); |
1163 addNamedSource( | 1137 addNamedSource("/lib1.dart", r''' |
1164 "/lib1.dart", | |
1165 r''' | |
1166 library lib1; | 1138 library lib1; |
1167 export 'lib2.dart'; | 1139 export 'lib2.dart'; |
1168 class One {}'''); | 1140 class One {}'''); |
1169 addNamedSource( | 1141 addNamedSource("/lib2.dart", r''' |
1170 "/lib2.dart", | |
1171 r''' | |
1172 library lib2; | 1142 library lib2; |
1173 export 'lib3.dart'; | 1143 export 'lib3.dart'; |
1174 class Two {}'''); | 1144 class Two {}'''); |
1175 addNamedSource( | 1145 addNamedSource("/lib3.dart", r''' |
1176 "/lib3.dart", | |
1177 r''' | |
1178 library lib3; | 1146 library lib3; |
1179 export 'lib2.dart'; | 1147 export 'lib2.dart'; |
1180 class Three {}'''); | 1148 class Three {}'''); |
1181 await computeAnalysisResult(source); | 1149 await computeAnalysisResult(source); |
1182 assertNoErrors(source); | 1150 assertNoErrors(source); |
1183 verify([source]); | 1151 verify([source]); |
1184 } | 1152 } |
1185 | 1153 |
1186 test_unusedImport_metadata() async { | 1154 test_unusedImport_metadata() async { |
1187 Source source = addSource(r''' | 1155 Source source = addSource(r''' |
1188 library L; | 1156 library L; |
1189 @A(x) | 1157 @A(x) |
1190 import 'lib1.dart'; | 1158 import 'lib1.dart'; |
1191 class A { | 1159 class A { |
1192 final int value; | 1160 final int value; |
1193 const A(this.value); | 1161 const A(this.value); |
1194 }'''); | 1162 }'''); |
1195 addNamedSource( | 1163 addNamedSource("/lib1.dart", r''' |
1196 "/lib1.dart", | |
1197 r''' | |
1198 library lib1; | 1164 library lib1; |
1199 const x = 0;'''); | 1165 const x = 0;'''); |
1200 await computeAnalysisResult(source); | 1166 await computeAnalysisResult(source); |
1201 assertNoErrors(source); | 1167 assertNoErrors(source); |
1202 verify([source]); | 1168 verify([source]); |
1203 } | 1169 } |
1204 | 1170 |
1205 test_unusedImport_prefix_topLevelFunction() async { | 1171 test_unusedImport_prefix_topLevelFunction() async { |
1206 Source source = addSource(r''' | 1172 Source source = addSource(r''' |
1207 library L; | 1173 library L; |
1208 import 'lib1.dart' hide topLevelFunction; | 1174 import 'lib1.dart' hide topLevelFunction; |
1209 import 'lib1.dart' as one show topLevelFunction; | 1175 import 'lib1.dart' as one show topLevelFunction; |
1210 class A { | 1176 class A { |
1211 static void x() { | 1177 static void x() { |
1212 One o; | 1178 One o; |
1213 one.topLevelFunction(); | 1179 one.topLevelFunction(); |
1214 } | 1180 } |
1215 }'''); | 1181 }'''); |
1216 addNamedSource( | 1182 addNamedSource("/lib1.dart", r''' |
1217 "/lib1.dart", | |
1218 r''' | |
1219 library lib1; | 1183 library lib1; |
1220 class One {} | 1184 class One {} |
1221 topLevelFunction() {}'''); | 1185 topLevelFunction() {}'''); |
1222 await computeAnalysisResult(source); | 1186 await computeAnalysisResult(source); |
1223 assertNoErrors(source); | 1187 assertNoErrors(source); |
1224 verify([source]); | 1188 verify([source]); |
1225 } | 1189 } |
1226 | 1190 |
1227 test_unusedImport_prefix_topLevelFunction2() async { | 1191 test_unusedImport_prefix_topLevelFunction2() async { |
1228 Source source = addSource(r''' | 1192 Source source = addSource(r''' |
1229 library L; | 1193 library L; |
1230 import 'lib1.dart' hide topLevelFunction; | 1194 import 'lib1.dart' hide topLevelFunction; |
1231 import 'lib1.dart' as one show topLevelFunction; | 1195 import 'lib1.dart' as one show topLevelFunction; |
1232 import 'lib1.dart' as two show topLevelFunction; | 1196 import 'lib1.dart' as two show topLevelFunction; |
1233 class A { | 1197 class A { |
1234 static void x() { | 1198 static void x() { |
1235 One o; | 1199 One o; |
1236 one.topLevelFunction(); | 1200 one.topLevelFunction(); |
1237 two.topLevelFunction(); | 1201 two.topLevelFunction(); |
1238 } | 1202 } |
1239 }'''); | 1203 }'''); |
1240 addNamedSource( | 1204 addNamedSource("/lib1.dart", r''' |
1241 "/lib1.dart", | |
1242 r''' | |
1243 library lib1; | 1205 library lib1; |
1244 class One {} | 1206 class One {} |
1245 topLevelFunction() {}'''); | 1207 topLevelFunction() {}'''); |
1246 await computeAnalysisResult(source); | 1208 await computeAnalysisResult(source); |
1247 assertNoErrors(source); | 1209 assertNoErrors(source); |
1248 verify([source]); | 1210 verify([source]); |
1249 } | 1211 } |
1250 | 1212 |
1251 test_useOfVoidResult_implicitReturnValue() async { | 1213 test_useOfVoidResult_implicitReturnValue() async { |
1252 Source source = addSource(r''' | 1214 Source source = addSource(r''' |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1371 | 1333 |
1372 test_import_valid_outside_lib() async { | 1334 test_import_valid_outside_lib() async { |
1373 addNamedSource("/myproj/pubspec.yaml", ""); | 1335 addNamedSource("/myproj/pubspec.yaml", ""); |
1374 addNamedSource("/myproj/web/other.dart", ""); | 1336 addNamedSource("/myproj/web/other.dart", ""); |
1375 Source source = | 1337 Source source = |
1376 addNamedSource("/myproj/lib2/test.dart", "import '../web/other.dart';"); | 1338 addNamedSource("/myproj/lib2/test.dart", "import '../web/other.dart';"); |
1377 await computeAnalysisResult(source); | 1339 await computeAnalysisResult(source); |
1378 assertNoErrors(source); | 1340 assertNoErrors(source); |
1379 } | 1341 } |
1380 } | 1342 } |
OLD | NEW |