Skip to content

Commit b26b7c2

Browse files
committed
CR fixes
1 parent f0401e4 commit b26b7c2

File tree

5 files changed

+69
-66
lines changed

5 files changed

+69
-66
lines changed

lib/src/lints/avoid_using_api/avoid_using_api_linter.dart

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,7 @@ class AvoidUsingApiLinter {
328328
return;
329329
}
330330

331-
if (!_hasNamedParameter(node.argumentList, namedParameter)) {
331+
if (!_containsNamedParameter(node.argumentList, namedParameter)) {
332332
return;
333333
}
334334

@@ -346,10 +346,9 @@ class AvoidUsingApiLinter {
346346
});
347347

348348
context.registry.addInstanceCreationExpression((node) {
349-
final String? expectedConstructorName;
350-
if (identifier == defaultConstructorIdentifier) {
351-
expectedConstructorName = null;
352-
} else {
349+
String? expectedConstructorName;
350+
351+
if (identifier != defaultConstructorIdentifier) {
353352
expectedConstructorName = identifier;
354353
}
355354

@@ -362,7 +361,7 @@ class AvoidUsingApiLinter {
362361
return;
363362
}
364363

365-
if (!_hasNamedParameter(node.argumentList, namedParameter)) {
364+
if (!_containsNamedParameter(node.argumentList, namedParameter)) {
366365
return;
367366
}
368367

@@ -376,7 +375,10 @@ class AvoidUsingApiLinter {
376375
});
377376
}
378377

379-
bool _hasNamedParameter(ArgumentList argumentList, String namedParameter) =>
378+
bool _containsNamedParameter(
379+
ArgumentList argumentList,
380+
String namedParameter,
381+
) =>
380382
argumentList.arguments.any(
381383
(arg) =>
382384
arg is NamedExpression && arg.name.label.name == namedParameter,

lint_test/avoid_using_api/external_source/lib/external_source.dart

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,35 +4,27 @@
44
class BannedCodeUsage {
55
final String test4 = 'Hello World';
66

7-
BannedCodeUsage({this.parameter1, this.parameter2});
7+
BannedCodeUsage();
88

9-
String? parameter1;
10-
String? parameter2;
11-
12-
factory BannedCodeUsage.test3({String? parameter1, String? parameter2}) {
13-
return BannedCodeUsage(
14-
parameter1: parameter1,
15-
parameter2: parameter2,
16-
);
9+
factory BannedCodeUsage.test3() {
10+
return BannedCodeUsage();
1711
}
1812

19-
BannedCodeUsage.test5({String? parameter1, String? parameter2});
20-
21-
void test({String? parameter1, String? parameter2}) {}
13+
void test() {}
2214

23-
static String test2({String? parameter1, String? parameter2}) {
15+
static String test2() {
2416
return 'Hello World';
2517
}
2618
}
2719

2820
const test2 = 'Hello World';
2921

30-
void test({String? parameter1}) {}
22+
void test() {}
3123

3224
int banned = 5;
3325

3426
extension BannedExtension on int {
35-
int banned({String? parameter1, String? parameter2}) => this + 10;
27+
int banned() => this + 10;
3628

3729
int get bannedGetter => 10;
3830
}

lint_test/avoid_using_api/named_parameter_ban/analysis_options.yaml

Lines changed: 24 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -8,32 +8,27 @@ custom_lint:
88
severity: warning
99
entries:
1010
- identifier: ()
11-
named_parameter: parameter1
12-
class_name: BannedCodeUsage
13-
source: package:external_source
14-
reason: "Use parameter2 instead"
15-
- identifier: test3
16-
named_parameter: parameter1
17-
class_name: BannedCodeUsage
18-
source: package:external_source
19-
reason: "Use parameter2 instead"
20-
- identifier: test5
21-
named_parameter: parameter1
22-
class_name: BannedCodeUsage
23-
source: package:external_source
24-
reason: "Use parameter2 instead"
25-
- identifier: test2
26-
named_parameter: parameter1
27-
class_name: BannedCodeUsage
28-
source: package:external_source
29-
reason: "Use parameter2 instead"
30-
- identifier: test
31-
named_parameter: parameter1
32-
class_name: BannedCodeUsage
33-
source: package:external_source
34-
reason: "Use parameter2 instead"
35-
- identifier: banned
36-
named_parameter: parameter1
37-
class_name: BannedExtension
38-
source: package:external_source
39-
reason: "Use parameter2 instead"
11+
named_parameter: badParameter
12+
class_name: NamedParameterBan
13+
source: package:named_parameter_ban
14+
reason: "Use goodParameter instead"
15+
- identifier: namedConstructor
16+
named_parameter: badParameter
17+
class_name: NamedParameterBan
18+
source: package:named_parameter_ban
19+
reason: "Use goodParameter instead"
20+
- identifier: staticMethod
21+
named_parameter: badParameter
22+
class_name: NamedParameterBan
23+
source: package:named_parameter_ban
24+
reason: "Use goodParameter instead"
25+
- identifier: method
26+
named_parameter: badParameter
27+
class_name: NamedParameterBan
28+
source: package:named_parameter_ban
29+
reason: "Use goodParameter instead"
30+
- identifier: extensionMethod
31+
named_parameter: badParameter
32+
class_name: NamedParameterBanExtension
33+
source: package:named_parameter_ban
34+
reason: "Use goodParameter instead"
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
class NamedParameterBan {
2+
NamedParameterBan({this.badParameter, this.goodParameter});
3+
4+
String? badParameter;
5+
String? goodParameter;
6+
7+
NamedParameterBan.namedConstructor(
8+
{String? badParameter, String? goodParameter}) {}
9+
10+
void method({String? badParameter, String? goodParameter}) {}
11+
static void staticMethod({String? badParameter, String? goodParameter}) {}
12+
}
13+
14+
extension NamedParameterBanExtension on int {
15+
String extensionMethod({String? badParameter, String? goodParameter}) => '';
16+
}
Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,26 @@
1-
// ignore_for_file: unused_local_variable
2-
3-
import 'package:external_source/external_source.dart';
1+
import 'package:named_parameter_ban/named_parameter_ban.dart';
42

53
void testingBannedCodeLint() async {
64
// expect_lint: avoid_using_api
7-
final bannedCodeUsage = BannedCodeUsage(parameter1: '');
8-
9-
// expect_lint: avoid_using_api
10-
final test3 = BannedCodeUsage.test3(parameter1: '');
5+
NamedParameterBan(badParameter: '');
6+
NamedParameterBan(goodParameter: '');
117

128
// expect_lint: avoid_using_api
13-
final test5 = BannedCodeUsage.test5(parameter1: '');
9+
NamedParameterBan.namedConstructor(badParameter: '');
10+
NamedParameterBan.namedConstructor(goodParameter: '');
1411

1512
// expect_lint: avoid_using_api
16-
BannedCodeUsage.test2(
17-
parameter1: 'test',
13+
NamedParameterBan.staticMethod(
14+
badParameter: 'test',
1815
);
16+
NamedParameterBan.staticMethod(goodParameter: '');
1917

20-
final obj = BannedCodeUsage();
18+
final obj = NamedParameterBan();
2119
// expect_lint: avoid_using_api
22-
obj.test(parameter1: '');
23-
24-
test(parameter1: '');
20+
obj.method(badParameter: '');
21+
obj.method(goodParameter: '');
2522

2623
// expect_lint: avoid_using_api
27-
2.banned(parameter1: '');
24+
0.extensionMethod(badParameter: '');
25+
0.extensionMethod(goodParameter: '');
2826
}

0 commit comments

Comments
 (0)