Skip to content

Commit e78a7cc

Browse files
pqcommit-bot@chromium.org
authored andcommitted
bulk fix for diagnostic_describe_all_properties
Change-Id: I08996a8ff11a49ea2296baff62b823fd329eae31 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/162680 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Phil Quitslund <[email protected]>
1 parent 5f7faba commit e78a7cc

File tree

3 files changed

+76
-0
lines changed

3 files changed

+76
-0
lines changed

pkg/analysis_server/lib/src/services/correction/bulk_fix_processor.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import 'package:analysis_server/src/services/correction/change_workspace.dart';
99
import 'package:analysis_server/src/services/correction/dart/abstract_producer.dart';
1010
import 'package:analysis_server/src/services/correction/dart/add_await.dart';
1111
import 'package:analysis_server/src/services/correction/dart/add_const.dart';
12+
import 'package:analysis_server/src/services/correction/dart/add_diagnostic_property_reference.dart';
1213
import 'package:analysis_server/src/services/correction/dart/add_override.dart';
1314
import 'package:analysis_server/src/services/correction/dart/convert_add_all_to_spread.dart';
1415
import 'package:analysis_server/src/services/correction/dart/convert_conditional_expression_to_if_element.dart';
@@ -79,6 +80,8 @@ class BulkFixProcessor {
7980
LintNames.await_only_futures: RemoveAwait.newInstance,
8081
LintNames.curly_braces_in_flow_control_structures:
8182
UseCurlyBraces.newInstance,
83+
LintNames.diagnostic_describe_all_properties:
84+
AddDiagnosticPropertyReference.newInstance,
8285
LintNames.empty_catches: RemoveEmptyCatch.newInstance,
8386
LintNames.empty_constructor_bodies: RemoveEmptyConstructorBody.newInstance,
8487
LintNames.empty_statements: RemoveEmptyStatement.newInstance,
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
// Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file
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.
4+
5+
import 'package:analysis_server/src/services/linter/lint_names.dart';
6+
import 'package:test_reflective_loader/test_reflective_loader.dart';
7+
8+
import 'bulk_fix_processor.dart';
9+
10+
void main() {
11+
defineReflectiveSuite(() {
12+
defineReflectiveTests(AddDiagnosticPropertyReferenceTest);
13+
});
14+
}
15+
16+
@reflectiveTest
17+
class AddDiagnosticPropertyReferenceTest extends BulkFixProcessorTest {
18+
@override
19+
String get lintCode => LintNames.diagnostic_describe_all_properties;
20+
21+
Future<void> test_singleFile() async {
22+
addFlutterPackage();
23+
await resolveTestUnit('''
24+
import 'package:flutter/foundation.dart';
25+
import 'package:flutter/widgets.dart';
26+
27+
class C extends Widget with Diagnosticable {
28+
bool get absorbing => _absorbing;
29+
bool _absorbing;
30+
bool ignoringSemantics;
31+
@override
32+
void debugFillProperties(DiagnosticPropertiesBuilder properties) {
33+
super.debugFillProperties(properties);
34+
properties.add(DiagnosticsProperty<bool>('absorbing', absorbing));
35+
}
36+
}
37+
38+
class D extends Widget with Diagnosticable {
39+
bool ignoringSemantics;
40+
@override
41+
void debugFillProperties(DiagnosticPropertiesBuilder properties) {
42+
}
43+
}
44+
''');
45+
await assertHasFix('''
46+
import 'package:flutter/foundation.dart';
47+
import 'package:flutter/widgets.dart';
48+
49+
class C extends Widget with Diagnosticable {
50+
bool get absorbing => _absorbing;
51+
bool _absorbing;
52+
bool ignoringSemantics;
53+
@override
54+
void debugFillProperties(DiagnosticPropertiesBuilder properties) {
55+
super.debugFillProperties(properties);
56+
properties.add(DiagnosticsProperty<bool>('absorbing', absorbing));
57+
properties.add(DiagnosticsProperty<bool>('ignoringSemantics', ignoringSemantics));
58+
}
59+
}
60+
61+
class D extends Widget with Diagnosticable {
62+
bool ignoringSemantics;
63+
@override
64+
void debugFillProperties(DiagnosticPropertiesBuilder properties) {
65+
properties.add(DiagnosticsProperty<bool>('ignoringSemantics', ignoringSemantics));
66+
}
67+
}
68+
''');
69+
}
70+
}

pkg/analysis_server/test/src/services/correction/fix/bulk/test_all.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ import 'package:test_reflective_loader/test_reflective_loader.dart';
66

77
import 'add_await_test.dart' as add_await;
88
import 'add_const_test.dart' as add_const;
9+
import 'add_diagnostic_property_reference_test.dart'
10+
as add_diagnostic_property_reference;
911
import 'add_override_test.dart' as add_override;
1012
import 'convert_documentation_into_line_test.dart'
1113
as convert_documentation_into_line;
@@ -59,6 +61,7 @@ void main() {
5961
defineReflectiveSuite(() {
6062
add_await.main();
6163
add_const.main();
64+
add_diagnostic_property_reference.main();
6265
add_override.main();
6366
convert_documentation_into_line.main();
6467
convert_map_from_iterable_to_for_literal.main();

0 commit comments

Comments
 (0)