From 0d823a53f8040c2a4df71fb85169c67da7e1e800 Mon Sep 17 00:00:00 2001 From: Illia Aihistov Date: Tue, 28 Jul 2026 10:01:44 +0300 Subject: [PATCH] refactor: remove constructor parameter count validation from number_of_parameters rule --- .../number_of_parameters/number_of_parameters_rule.dart | 6 ++---- .../visitors/number_of_parameters_visitor.dart | 8 +------- .../number_of_parameters_rule_test.dart | 6 +++--- 3 files changed, 6 insertions(+), 14 deletions(-) diff --git a/lib/src/lints/number_of_parameters/number_of_parameters_rule.dart b/lib/src/lints/number_of_parameters/number_of_parameters_rule.dart index dbea292d..23841906 100644 --- a/lib/src/lints/number_of_parameters/number_of_parameters_rule.dart +++ b/lib/src/lints/number_of_parameters/number_of_parameters_rule.dart @@ -6,8 +6,7 @@ import 'package:solid_lints/src/lints/number_of_parameters/visitors/number_of_pa import 'package:solid_lints/src/models/solid_lint_rule.dart'; /// A number of parameters metric which checks whether we didn't exceed -/// the maximum allowed number of parameters for a function, method or -/// constructor. +/// the maximum allowed number of parameters for a function or method. /// /// ### Example: /// @@ -57,7 +56,7 @@ class NumberOfParametersRule name: lintName, description: "Checks whether we didn't exceed the maximum allowed number " - 'of parameters for a function, method or constructor.', + 'of parameters for a function or method.', parametersParser: NumberOfParametersParameters.fromJson, ); @@ -76,6 +75,5 @@ class NumberOfParametersRule registry.addFunctionDeclaration(this, visitor); registry.addMethodDeclaration(this, visitor); - registry.addConstructorDeclaration(this, visitor); } } diff --git a/lib/src/lints/number_of_parameters/visitors/number_of_parameters_visitor.dart b/lib/src/lints/number_of_parameters/visitors/number_of_parameters_visitor.dart index c898b798..495db778 100644 --- a/lib/src/lints/number_of_parameters/visitors/number_of_parameters_visitor.dart +++ b/lib/src/lints/number_of_parameters/visitors/number_of_parameters_visitor.dart @@ -4,8 +4,7 @@ import 'package:solid_lints/src/lints/number_of_parameters/models/number_of_para import 'package:solid_lints/src/lints/number_of_parameters/number_of_parameters_rule.dart'; import 'package:solid_lints/src/utils/node_utils.dart'; -/// A visitor that checks the number of parameters for functions, methods, and -/// constructors. +/// A visitor that checks the number of parameters for functions and methods. class NumberOfParametersVisitor extends SimpleAstVisitor { final NumberOfParametersRule _rule; final NumberOfParametersParameters _parameters; @@ -38,9 +37,4 @@ class NumberOfParametersVisitor extends SimpleAstVisitor { if (isOverride(node.metadata)) return; _check(node, node.parameters); } - - @override - void visitConstructorDeclaration(ConstructorDeclaration node) { - _check(node, node.parameters); - } } diff --git a/test/src/lints/number_of_parameters/number_of_parameters_rule_test.dart b/test/src/lints/number_of_parameters/number_of_parameters_rule_test.dart index 52a9d171..16247e10 100644 --- a/test/src/lints/number_of_parameters/number_of_parameters_rule_test.dart +++ b/test/src/lints/number_of_parameters/number_of_parameters_rule_test.dart @@ -67,10 +67,10 @@ class UserDto { '''); } - Future test_reports_on_constructors_exceeding_max_parameters() async { - await assertAutoDiagnostics(''' + Future test_does_not_report_on_constructors() async { + await assertNoDiagnostics(r''' class Test { - Test${expectLint(r'(int a, int b, int c)')}; + Test(int a, int b, int c); } '''); }