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

Side by Side Diff: pkg/analyzer/test/generated/resolver_test.dart

Issue 725163004: Report HintCode.UNUSED_ELEMENT for functions. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 1 month 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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 engine.resolver_test; 5 library engine.resolver_test;
6 6
7 import 'dart:collection'; 7 import 'dart:collection';
8 import 'package:analyzer/src/generated/java_core.dart'; 8 import 'package:analyzer/src/generated/java_core.dart';
9 import 'package:analyzer/src/generated/java_engine.dart'; 9 import 'package:analyzer/src/generated/java_engine.dart';
10 import 'package:analyzer/src/generated/java_engine_io.dart'; 10 import 'package:analyzer/src/generated/java_engine_io.dart';
(...skipping 3317 matching lines...) Expand 10 before | Expand all | Expand 10 after
3328 static m() {} 3328 static m() {}
3329 } 3329 }
3330 main() { 3330 main() {
3331 _A.m(); 3331 _A.m();
3332 }'''); 3332 }''');
3333 resolve(source); 3333 resolve(source);
3334 assertNoErrors(source); 3334 assertNoErrors(source);
3335 verify([source]); 3335 verify([source]);
3336 } 3336 }
3337 3337
3338 void test_unusedElement_functionLocal_notUsed_noReference() {
3339 enableUnusedElement = true;
3340 Source source = addSource(r'''
3341 main() {
3342 f() {}
3343 }''');
3344 resolve(source);
3345 assertErrors(source, [HintCode.UNUSED_ELEMENT]);
3346 verify([source]);
3347 }
3348
3349 void test_unusedElement_functionLocal_notUsed_referenceFromItself() {
3350 enableUnusedElement = true;
3351 Source source = addSource(r'''
3352 main() {
3353 _f(int p) {
3354 _f(p - 1);
3355 }
3356 }''');
3357 resolve(source);
3358 assertErrors(source, [HintCode.UNUSED_ELEMENT]);
3359 verify([source]);
3360 }
3361
3362 void test_unusedElement_functionLocal_isUsed_invocation() {
3363 enableUnusedElement = true;
3364 Source source = addSource(r'''
3365 main() {
3366 f() {}
3367 f();
3368 }''');
3369 resolve(source);
3370 assertNoErrors(source);
3371 verify([source]);
3372 }
3373
3374 void test_unusedElement_functionLocal_isUsed_reference() {
3375 enableUnusedElement = true;
3376 Source source = addSource(r'''
3377 main() {
3378 f() {}
3379 print(f);
3380 }
3381 print(x) {}
3382 ''');
3383 resolve(source);
3384 assertNoErrors(source);
3385 verify([source]);
3386 }
3387
3388 void test_unusedElement_functionLocal_isUsed_closure() {
3389 enableUnusedElement = true;
3390 Source source = addSource(r'''
3391 main() {
3392 print(() {});
3393 }
3394 print(x) {}
3395 ''');
3396 resolve(source);
3397 assertNoErrors(source);
3398 verify([source]);
3399 }
3400
3401 void test_unusedElement_functionTop_notUsed_noReference() {
3402 enableUnusedElement = true;
3403 Source source = addSource(r'''
3404 _f() {}
3405 main() {
3406 }''');
3407 resolve(source);
3408 assertErrors(source, [HintCode.UNUSED_ELEMENT]);
3409 verify([source]);
3410 }
3411
3412 void test_unusedElement_functionTop_notUsed_referenceFromItself() {
3413 enableUnusedElement = true;
3414 Source source = addSource(r'''
3415 _f(int p) {
3416 _f(p - 1);
3417 }
3418 main() {
3419 }''');
3420 resolve(source);
3421 assertErrors(source, [HintCode.UNUSED_ELEMENT]);
3422 verify([source]);
3423 }
3424
3425 void test_unusedElement_functionTop_isUsed_invocation() {
3426 enableUnusedElement = true;
3427 Source source = addSource(r'''
3428 _f() {}
3429 main() {
3430 _f();
3431 }''');
3432 resolve(source);
3433 assertNoErrors(source);
3434 verify([source]);
3435 }
3436
3437 void test_unusedElement_functionTop_isUsed_reference() {
3438 enableUnusedElement = true;
3439 Source source = addSource(r'''
3440 _f() {}
3441 main() {
3442 print(_f);
3443 }
3444 print(x) {}
3445 ''');
3446 resolve(source);
3447 assertNoErrors(source);
3448 verify([source]);
3449 }
3450
3338 void test_unusedElement_getter_notUsed_noReference() { 3451 void test_unusedElement_getter_notUsed_noReference() {
3339 enableUnusedElement = true; 3452 enableUnusedElement = true;
3340 Source source = addSource(r''' 3453 Source source = addSource(r'''
3341 class A { 3454 class A {
3342 get _g => null; 3455 get _g => null;
3343 }'''); 3456 }''');
3344 resolve(source); 3457 resolve(source);
3345 assertErrors(source, [HintCode.UNUSED_ELEMENT]); 3458 assertErrors(source, [HintCode.UNUSED_ELEMENT]);
3346 verify([source]); 3459 verify([source]);
3347 } 3460 }
(...skipping 9082 matching lines...) Expand 10 before | Expand all | Expand 10 after
12430 runReflectiveTests(TypeResolverVisitorTest); 12543 runReflectiveTests(TypeResolverVisitorTest);
12431 runReflectiveTests(CheckedModeCompileTimeErrorCodeTest); 12544 runReflectiveTests(CheckedModeCompileTimeErrorCodeTest);
12432 runReflectiveTests(ErrorResolverTest); 12545 runReflectiveTests(ErrorResolverTest);
12433 runReflectiveTests(HintCodeTest); 12546 runReflectiveTests(HintCodeTest);
12434 runReflectiveTests(MemberMapTest); 12547 runReflectiveTests(MemberMapTest);
12435 runReflectiveTests(NonHintCodeTest); 12548 runReflectiveTests(NonHintCodeTest);
12436 runReflectiveTests(SimpleResolverTest); 12549 runReflectiveTests(SimpleResolverTest);
12437 runReflectiveTests(StrictModeTest); 12550 runReflectiveTests(StrictModeTest);
12438 runReflectiveTests(TypePropagationTest); 12551 runReflectiveTests(TypePropagationTest);
12439 } 12552 }
OLDNEW
« pkg/analyzer/lib/src/generated/resolver.dart ('K') | « pkg/analyzer/lib/src/generated/resolver.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698