From 48d1f73feae43b5e2da2c3a9054e23a5e4baeade Mon Sep 17 00:00:00 2001 From: Jacob Moura Date: Sun, 25 Aug 2024 09:38:43 -0300 Subject: [PATCH] fix class name --- README.md | 10 ++++---- .../validations/login_param_validation.dart | 2 +- .../register_param_validation.dart | 2 +- lib/lucid_validation.dart | 4 +-- ...der.dart => lucid_validation_builder.dart} | 2 +- ...d_validation.dart => lucid_validator.dart} | 4 +-- .../equal_validation.dart} | 4 +-- .../greater_than_validation.dart} | 4 +-- .../is_empty_validation.dart} | 4 +-- .../is_not_null_validation.dart} | 4 +-- .../is_null_validation.dart} | 4 +-- .../less_then_validation.dart} | 4 +-- .../matches_pattern_validation.dart} | 4 +-- .../max_length_validation.dart} | 4 +-- .../max_validation.dart} | 4 +-- .../min_length_validation.dart} | 4 +-- .../min_validation.dart} | 4 +-- .../must_have_lowercase_validation.dart} | 4 +-- .../must_have_numbers_validation.dart} | 4 +-- ...st_have_special_character_validation.dart} | 4 +-- .../must_have_uppercase_validation.dart} | 4 +-- .../not_empty_validation.dart} | 4 +-- .../not_equal_validation.dart} | 4 +-- .../range_validation.dart} | 4 +-- .../valid_cep_validation.dart} | 4 +-- .../valid_cnpj_validation.dart} | 4 +-- .../valid_cpf_validation.dart} | 4 +-- .../valid_creditcard_validation.dart} | 4 +-- .../valid_email_validation.dart} | 4 +-- lib/src/validations/validations.dart | 25 +++++++++++++++++++ lib/src/validators/validators.dart | 25 ------------------- pubspec.yaml | 2 +- test/lucid_validation_test.dart | 12 ++++----- test/mocks/mocks.dart | 8 +++--- 34 files changed, 94 insertions(+), 94 deletions(-) rename lib/src/{validator_builder.dart => lucid_validation_builder.dart} (99%) rename lib/src/{lucid_validation.dart => lucid_validator.dart} (97%) rename lib/src/{validators/equal_validator_validator.dart => validations/equal_validation.dart} (91%) rename lib/src/{validators/greater_than_validator.dart => validations/greater_than_validation.dart} (91%) rename lib/src/{validators/is_empty_validator.dart => validations/is_empty_validation.dart} (89%) rename lib/src/{validators/is_not_null_validator.dart => validations/is_not_null_validation.dart} (89%) rename lib/src/{validators/is_null_validator.dart => validations/is_null_validation.dart} (89%) rename lib/src/{validators/less_then_validator.dart => validations/less_then_validation.dart} (91%) rename lib/src/{validators/matches_pattern_validator.dart => validations/matches_pattern_validation.dart} (90%) rename lib/src/{validators/max_length_validator.dart => validations/max_length_validation.dart} (91%) rename lib/src/{validators/max_validator.dart => validations/max_validation.dart} (91%) rename lib/src/{validators/min_length_validator.dart => validations/min_length_validation.dart} (91%) rename lib/src/{validators/min_validator.dart => validations/min_validation.dart} (91%) rename lib/src/{validators/must_have_lowercase_validator.dart => validations/must_have_lowercase_validation.dart} (90%) rename lib/src/{validators/must_have_numbers_validator.dart => validations/must_have_numbers_validation.dart} (90%) rename lib/src/{validators/must_have_special_character_validator.dart => validations/must_have_special_character_validation.dart} (90%) rename lib/src/{validators/must_have_uppercase_validator.dart => validations/must_have_uppercase_validation.dart} (90%) rename lib/src/{validators/not_empty_validator.dart => validations/not_empty_validation.dart} (89%) rename lib/src/{validators/not_equal_validator.dart => validations/not_equal_validation.dart} (92%) rename lib/src/{validators/range_validator.dart => validations/range_validation.dart} (91%) rename lib/src/{validators/valid_cep_validator.dart => validations/valid_cep_validation.dart} (87%) rename lib/src/{validators/valid_cnpj_validator.dart => validations/valid_cnpj_validation.dart} (94%) rename lib/src/{validators/valid_cpf_validator.dart => validations/valid_cpf_validation.dart} (93%) rename lib/src/{validators/valid_creditcard_validator.dart => validations/valid_creditcard_validation.dart} (92%) rename lib/src/{validators/valid_email_validator.dart => validations/valid_email_validation.dart} (90%) create mode 100644 lib/src/validations/validations.dart delete mode 100644 lib/src/validators/validators.dart diff --git a/README.md b/README.md index 7ad1d04..f236087 100644 --- a/README.md +++ b/README.md @@ -37,13 +37,13 @@ class UserModel { } ``` -After that, create a `Validation` class and extends to `LucidValidation`: +After that, create a `LucidValidator` class and extends to `LucidValidator`: ```dart import 'package:lucid_validation/lucid_validation.dart'; -class UserValidation extends LucidValidation { - UserValidation() { +class UserValidator extends LucidValidator { + UserValidator() { ruleFor((user) => user.email, key: 'email') .notEmpty() .validEmail(); @@ -69,7 +69,7 @@ Now, just validate! void main() { final user = UserModel(email: 'test@example.com', password: 'Passw0rd!', age: 25); - final validator = UserValidation(); + final validator = UserValidator(); final errors = validator.validate(user); @@ -83,7 +83,7 @@ void main() { Note, the validate method returns a list of errors with all validation exceptions. -### Available Validators +### Available Validations Here’s a complete list of available validators you can use: diff --git a/example/lib/domain/validations/login_param_validation.dart b/example/lib/domain/validations/login_param_validation.dart index 72112c1..34999ba 100644 --- a/example/lib/domain/validations/login_param_validation.dart +++ b/example/lib/domain/validations/login_param_validation.dart @@ -2,7 +2,7 @@ import 'package:example/domain/dtos/login_param_dto.dart'; import 'package:example/domain/validations/extensions.dart'; import 'package:lucid_validation/lucid_validation.dart'; -class LoginParamValidation extends LucidValidation { +class LoginParamValidation extends LucidValidator { LoginParamValidation() { ruleFor((loginParamDto) => loginParamDto.email, key: 'email') // .notEmpty() diff --git a/example/lib/domain/validations/register_param_validation.dart b/example/lib/domain/validations/register_param_validation.dart index 32c76dc..ccfaabf 100644 --- a/example/lib/domain/validations/register_param_validation.dart +++ b/example/lib/domain/validations/register_param_validation.dart @@ -2,7 +2,7 @@ import 'package:example/domain/dtos/register_param_dto.dart'; import 'package:example/domain/validations/extensions.dart'; import 'package:lucid_validation/lucid_validation.dart'; -class RegisterParamValidation extends LucidValidation { +class RegisterParamValidation extends LucidValidator { RegisterParamValidation() { ruleFor((registerParamDto) => registerParamDto.email, key: 'email') // .notEmpty() diff --git a/lib/lucid_validation.dart b/lib/lucid_validation.dart index 6c6c9eb..abb87f3 100644 --- a/lib/lucid_validation.dart +++ b/lib/lucid_validation.dart @@ -54,6 +54,6 @@ /// library lucid_validation; -export 'src/lucid_validation.dart'; +export 'src/lucid_validator.dart'; export 'src/types/types.dart'; -export 'src/validators/validators.dart'; +export 'src/validations/validations.dart'; diff --git a/lib/src/validator_builder.dart b/lib/src/lucid_validation_builder.dart similarity index 99% rename from lib/src/validator_builder.dart rename to lib/src/lucid_validation_builder.dart index 4777211..75e14ac 100644 --- a/lib/src/validator_builder.dart +++ b/lib/src/lucid_validation_builder.dart @@ -1,4 +1,4 @@ -part of 'lucid_validation.dart'; +part of 'lucid_validator.dart'; /// Defines the behavior of rule execution when a validation failure occurs. /// diff --git a/lib/src/lucid_validation.dart b/lib/src/lucid_validator.dart similarity index 97% rename from lib/src/lucid_validation.dart rename to lib/src/lucid_validator.dart index 118cb4d..e6de712 100644 --- a/lib/src/lucid_validation.dart +++ b/lib/src/lucid_validator.dart @@ -1,6 +1,6 @@ import '../lucid_validation.dart'; -part 'validator_builder.dart'; +part 'lucid_validation_builder.dart'; class _PropSelector { final TProp Function(E entity) selector; @@ -12,7 +12,7 @@ class _PropSelector { /// Abstract class for creating validation logic for a specific entity type [E]. /// /// [E] represents the type of the entity being validated. -abstract class LucidValidation { +abstract class LucidValidator { final List<_PropSelector> _propSelectors = []; /// Registers a validation rule for a specific property of the entity. diff --git a/lib/src/validators/equal_validator_validator.dart b/lib/src/validations/equal_validation.dart similarity index 91% rename from lib/src/validators/equal_validator_validator.dart rename to lib/src/validations/equal_validation.dart index 3ef7961..8982ec6 100644 --- a/lib/src/validators/equal_validator_validator.dart +++ b/lib/src/validations/equal_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [T] properties to add an equality validation. /// /// This extension adds an `equalTo` method that can be used to ensure that a value /// is equal to a specific value. -extension EqualValidator on LucidValidationBuilder { +extension EqualValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the value is equal to [comparison]. /// /// [predicate] is a function that returns the value to compare against. diff --git a/lib/src/validators/greater_than_validator.dart b/lib/src/validations/greater_than_validation.dart similarity index 91% rename from lib/src/validators/greater_than_validator.dart rename to lib/src/validations/greater_than_validation.dart index 28dbca9..edd97c7 100644 --- a/lib/src/validators/greater_than_validator.dart +++ b/lib/src/validations/greater_than_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [num] properties to add a greater than validation. /// /// This extension adds a `greaterThan` method that can be used to ensure that a number /// is greater than a specified value. -extension GreaterThanValidator on LucidValidationBuilder { +extension GreaterThanValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [num] is greater than [minValue]. /// /// [minValue] is the value that the number must be greater than. diff --git a/lib/src/validators/is_empty_validator.dart b/lib/src/validations/is_empty_validation.dart similarity index 89% rename from lib/src/validators/is_empty_validator.dart rename to lib/src/validations/is_empty_validation.dart index c256730..65e7691 100644 --- a/lib/src/validators/is_empty_validator.dart +++ b/lib/src/validations/is_empty_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add an empty string validation. /// /// This extension adds an `isEmpty` method that can be used to ensure that a string /// is empty. -extension IsEmptyValidator on LucidValidationBuilder { +extension IsEmptyValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] is empty. /// /// [message] is the error message returned if the validation fails. Defaults to "Must be empty". diff --git a/lib/src/validators/is_not_null_validator.dart b/lib/src/validations/is_not_null_validation.dart similarity index 89% rename from lib/src/validators/is_not_null_validator.dart rename to lib/src/validations/is_not_null_validation.dart index e42b0a5..f5510c4 100644 --- a/lib/src/validators/is_not_null_validator.dart +++ b/lib/src/validations/is_not_null_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [T?] properties to add a not null validation. /// /// This extension adds an `isNotNull` method that can be used to ensure that a value /// is not null. -extension IsNotNullValidator on LucidValidationBuilder { +extension IsNotNullValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the value is not null. /// /// [message] is the error message returned if the validation fails. Defaults to "Cannot be null". diff --git a/lib/src/validators/is_null_validator.dart b/lib/src/validations/is_null_validation.dart similarity index 89% rename from lib/src/validators/is_null_validator.dart rename to lib/src/validations/is_null_validation.dart index 80fe141..95a8f93 100644 --- a/lib/src/validators/is_null_validator.dart +++ b/lib/src/validations/is_null_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [T?] properties to add a null validation. /// /// This extension adds an `isNull` method that can be used to ensure that a value /// is null. -extension IsNullValidator on LucidValidationBuilder { +extension IsNullValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the value is null. /// /// [message] is the error message returned if the validation fails. Defaults to "Must be null". diff --git a/lib/src/validators/less_then_validator.dart b/lib/src/validations/less_then_validation.dart similarity index 91% rename from lib/src/validators/less_then_validator.dart rename to lib/src/validations/less_then_validation.dart index e1883c7..52d5f4d 100644 --- a/lib/src/validators/less_then_validator.dart +++ b/lib/src/validations/less_then_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [num] properties to add a less than validation. /// /// This extension adds a `lessThan` method that can be used to ensure that a number /// is less than a specified value. -extension LessThanValidator on LucidValidationBuilder { +extension LessThanValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [num] is less than [maxValue]. /// /// [maxValue] is the value that the number must be less than. diff --git a/lib/src/validators/matches_pattern_validator.dart b/lib/src/validations/matches_pattern_validation.dart similarity index 90% rename from lib/src/validators/matches_pattern_validator.dart rename to lib/src/validations/matches_pattern_validation.dart index a96e7e3..c15ff53 100644 --- a/lib/src/validators/matches_pattern_validator.dart +++ b/lib/src/validations/matches_pattern_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add a regex pattern match validation. /// /// This extension adds a `matchesPattern` method that can be used to ensure that a string /// matches a specific regex pattern. -extension MatchesPatternValidator on LucidValidationBuilder { +extension MatchesPatternValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] matches the [pattern]. /// /// [pattern] is the regex pattern that the string must match. diff --git a/lib/src/validators/max_length_validator.dart b/lib/src/validations/max_length_validation.dart similarity index 91% rename from lib/src/validators/max_length_validator.dart rename to lib/src/validations/max_length_validation.dart index f20cc61..bdd151a 100644 --- a/lib/src/validators/max_length_validator.dart +++ b/lib/src/validations/max_length_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add a maximum length validation. /// /// This extension adds a `maxLength` method that can be used to ensure that the length of a string /// does not exceed a specified maximum number of characters. -extension MaxLengthValidator on LucidValidationBuilder { +extension MaxLengthValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the length of a [String] is less than or equal to [num]. /// /// [num] is the maximum allowed length for the string. diff --git a/lib/src/validators/max_validator.dart b/lib/src/validations/max_validation.dart similarity index 91% rename from lib/src/validators/max_validator.dart rename to lib/src/validations/max_validation.dart index 5c94fc8..c8bf40d 100644 --- a/lib/src/validators/max_validator.dart +++ b/lib/src/validations/max_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [num] properties to add a maximum value validation. /// /// This extension adds a `max` method that can be used to ensure that a numerical value /// does not exceed a specified maximum. -extension MaxValidator on LucidValidationBuilder { +extension MaxValidation on LucidValidationBuilder { /// Adds a validation rule that checks if a [num] value is less than or equal to [num]. /// /// [num] is the maximum allowed value. diff --git a/lib/src/validators/min_length_validator.dart b/lib/src/validations/min_length_validation.dart similarity index 91% rename from lib/src/validators/min_length_validator.dart rename to lib/src/validations/min_length_validation.dart index ff0f01d..7862981 100644 --- a/lib/src/validators/min_length_validator.dart +++ b/lib/src/validations/min_length_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add a minimum length validation. /// /// This extension adds a `minLength` method that can be used to ensure that the length of a string /// meets a specified minimum number of characters. -extension MinLengthValidator on LucidValidationBuilder { +extension MinLengthValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the length of a [String] is greater than or equal to [num]. /// /// [num] is the minimum required length for the string. diff --git a/lib/src/validators/min_validator.dart b/lib/src/validations/min_validation.dart similarity index 91% rename from lib/src/validators/min_validator.dart rename to lib/src/validations/min_validation.dart index 1dc158c..fda2fd2 100644 --- a/lib/src/validators/min_validator.dart +++ b/lib/src/validations/min_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [num] properties to add a minimum value validation. /// /// This extension adds a `min` method that can be used to ensure that a numerical value /// meets or exceeds a specified minimum. -extension MinValidator on LucidValidationBuilder { +extension MinValidation on LucidValidationBuilder { /// Adds a validation rule that checks if a [num] value is greater than or equal to [num]. /// /// [num] is the minimum allowed value. diff --git a/lib/src/validators/must_have_lowercase_validator.dart b/lib/src/validations/must_have_lowercase_validation.dart similarity index 90% rename from lib/src/validators/must_have_lowercase_validator.dart rename to lib/src/validations/must_have_lowercase_validation.dart index 22abcdc..b0de65e 100644 --- a/lib/src/validators/must_have_lowercase_validator.dart +++ b/lib/src/validations/must_have_lowercase_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add a lowercase letter validation. /// /// This extension adds a `mustHaveLowercase` method that can be used to ensure that a string /// contains at least one lowercase letter. -extension MustHaveLowercase on LucidValidationBuilder { +extension MustHaveLowercaseValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] contains at least one lowercase letter. /// /// [message] is the error message returned if the validation fails. Defaults to "Must contain at least one lowercase letter". diff --git a/lib/src/validators/must_have_numbers_validator.dart b/lib/src/validations/must_have_numbers_validation.dart similarity index 90% rename from lib/src/validators/must_have_numbers_validator.dart rename to lib/src/validations/must_have_numbers_validation.dart index bf7b1bc..bc2172e 100644 --- a/lib/src/validators/must_have_numbers_validator.dart +++ b/lib/src/validations/must_have_numbers_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add a numeric character validation. /// /// This extension adds a `mustHaveNumbers` method that can be used to ensure that a string /// contains at least one numeric digit. -extension MustHaveNumbers on LucidValidationBuilder { +extension MustHaveNumbersValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] contains at least one numeric digit. /// /// [message] is the error message returned if the validation fails. Defaults to "Must contain at least one numeric digit". diff --git a/lib/src/validators/must_have_special_character_validator.dart b/lib/src/validations/must_have_special_character_validation.dart similarity index 90% rename from lib/src/validators/must_have_special_character_validator.dart rename to lib/src/validations/must_have_special_character_validation.dart index d0e8105..916f168 100644 --- a/lib/src/validators/must_have_special_character_validator.dart +++ b/lib/src/validations/must_have_special_character_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add a special character validation. /// /// This extension adds a `mustHaveSpecialCharacter` method that can be used to ensure that a string /// contains at least one special character. -extension MustHaveSpecialCharacter on LucidValidationBuilder { +extension MustHaveSpecialCharacterValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] contains at least one special character. /// /// [message] is the error message returned if the validation fails. Defaults to "Must contain at least one special character". diff --git a/lib/src/validators/must_have_uppercase_validator.dart b/lib/src/validations/must_have_uppercase_validation.dart similarity index 90% rename from lib/src/validators/must_have_uppercase_validator.dart rename to lib/src/validations/must_have_uppercase_validation.dart index 099c95f..5b5b47f 100644 --- a/lib/src/validators/must_have_uppercase_validator.dart +++ b/lib/src/validations/must_have_uppercase_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add an uppercase letter validation. /// /// This extension adds a `mustHaveUppercase` method that can be used to ensure that a string /// contains at least one uppercase letter. -extension MustHaveUppercase on LucidValidationBuilder { +extension MustHaveUppercaseValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] contains at least one uppercase letter. /// /// [message] is the error message returned if the validation fails. Defaults to "Must contain at least one uppercase letter". diff --git a/lib/src/validators/not_empty_validator.dart b/lib/src/validations/not_empty_validation.dart similarity index 89% rename from lib/src/validators/not_empty_validator.dart rename to lib/src/validations/not_empty_validation.dart index 97c8363..fb2e5f2 100644 --- a/lib/src/validators/not_empty_validator.dart +++ b/lib/src/validations/not_empty_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add a not empty validation. /// /// This extension adds a `notEmpty` method that can be used to ensure that a string /// is not empty. -extension NotEmptyValidator on LucidValidationBuilder { +extension NotEmptyValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] is not empty. /// /// [message] is the error message returned if the validation fails. Defaults to "Cannot be empty". diff --git a/lib/src/validators/not_equal_validator.dart b/lib/src/validations/not_equal_validation.dart similarity index 92% rename from lib/src/validators/not_equal_validator.dart rename to lib/src/validations/not_equal_validation.dart index 3b2fa58..1da3c61 100644 --- a/lib/src/validators/not_equal_validator.dart +++ b/lib/src/validations/not_equal_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [T] properties to add a non-equality validation. /// /// This extension adds a `notEqualTo` method that can be used to ensure that a value /// is not equal to a specific value. -extension NotEqualValidator on LucidValidationBuilder { +extension NotEqualValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the value is not equal to [comparison]. /// /// [predicate] is the value that the field must not match. diff --git a/lib/src/validators/range_validator.dart b/lib/src/validations/range_validation.dart similarity index 91% rename from lib/src/validators/range_validator.dart rename to lib/src/validations/range_validation.dart index 509275f..c2f7e12 100644 --- a/lib/src/validators/range_validator.dart +++ b/lib/src/validations/range_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [num] properties to add a range validation. /// /// This extension adds a `range` method that can be used to ensure that a number /// is within a specified range. -extension RangeValidator on LucidValidationBuilder { +extension RangeValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [num] is within the range of [min] and [max]. /// /// [min] and [max] define the acceptable range for the number. diff --git a/lib/src/validators/valid_cep_validator.dart b/lib/src/validations/valid_cep_validation.dart similarity index 87% rename from lib/src/validators/valid_cep_validator.dart rename to lib/src/validations/valid_cep_validation.dart index f8d20c3..8478911 100644 --- a/lib/src/validators/valid_cep_validator.dart +++ b/lib/src/validations/valid_cep_validation.dart @@ -1,6 +1,6 @@ -part of 'validators.dart'; +part of 'validations.dart'; -extension ValidCEPValidator on LucidValidationBuilder { +extension ValidCEPValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] is a valid CEP (Brazilian postal code). /// /// This method verifies that the CEP is in the correct format (#####-###) and consists diff --git a/lib/src/validators/valid_cnpj_validator.dart b/lib/src/validations/valid_cnpj_validation.dart similarity index 94% rename from lib/src/validators/valid_cnpj_validator.dart rename to lib/src/validations/valid_cnpj_validation.dart index 47953e4..40910d5 100644 --- a/lib/src/validators/valid_cnpj_validator.dart +++ b/lib/src/validations/valid_cnpj_validation.dart @@ -1,6 +1,6 @@ -part of 'validators.dart'; +part of 'validations.dart'; -extension ValidCNPJValidator on LucidValidationBuilder { +extension ValidCnpjValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] is a valid CNPJ number. /// /// The CNPJ is the national identifier for Brazilian companies. This method diff --git a/lib/src/validators/valid_cpf_validator.dart b/lib/src/validations/valid_cpf_validation.dart similarity index 93% rename from lib/src/validators/valid_cpf_validator.dart rename to lib/src/validations/valid_cpf_validation.dart index 45fd2c0..769fa1f 100644 --- a/lib/src/validators/valid_cpf_validator.dart +++ b/lib/src/validations/valid_cpf_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add a valid CPF validation. /// /// This extension adds a `validCPF` method that can be used to ensure that a string /// is a valid CPF number. -extension ValidCPFValidator on LucidValidationBuilder { +extension ValidCPFValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] is a valid CPF number. /// /// [message] is the error message returned if the validation fails. Defaults to "Invalid CPF". diff --git a/lib/src/validators/valid_creditcard_validator.dart b/lib/src/validations/valid_creditcard_validation.dart similarity index 92% rename from lib/src/validators/valid_creditcard_validator.dart rename to lib/src/validations/valid_creditcard_validation.dart index 95c7286..dfc6bdb 100644 --- a/lib/src/validators/valid_creditcard_validator.dart +++ b/lib/src/validations/valid_creditcard_validation.dart @@ -1,6 +1,6 @@ -part of 'validators.dart'; +part of 'validations.dart'; -extension ValidCreditCardValidator on LucidValidationBuilder { +extension ValidCreditCardValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] is a valid credit card number. /// /// This method uses the Luhn algorithm to verify the validity of a credit card number. diff --git a/lib/src/validators/valid_email_validator.dart b/lib/src/validations/valid_email_validation.dart similarity index 90% rename from lib/src/validators/valid_email_validator.dart rename to lib/src/validations/valid_email_validation.dart index ab44021..202d2c1 100644 --- a/lib/src/validators/valid_email_validator.dart +++ b/lib/src/validations/valid_email_validation.dart @@ -1,10 +1,10 @@ -part of 'validators.dart'; +part of 'validations.dart'; /// Extension on [LucidValidationBuilder] for [String] properties to add a valid email validation. /// /// This extension adds a `validEmail` method that can be used to ensure that a string /// is a valid email address. -extension ValidEmailValidator on LucidValidationBuilder { +extension ValidEmailValidation on LucidValidationBuilder { /// Adds a validation rule that checks if the [String] is a valid email address. /// /// [message] is the error message returned if the validation fails. Defaults to "Invalid email address". diff --git a/lib/src/validations/validations.dart b/lib/src/validations/validations.dart new file mode 100644 index 0000000..00d062d --- /dev/null +++ b/lib/src/validations/validations.dart @@ -0,0 +1,25 @@ +import '../../lucid_validation.dart'; + +part 'equal_validation.dart'; +part 'greater_than_validation.dart'; +part 'is_empty_validation.dart'; +part 'is_not_null_validation.dart'; +part 'is_null_validation.dart'; +part 'less_then_validation.dart'; +part 'matches_pattern_validation.dart'; +part 'max_length_validation.dart'; +part 'max_validation.dart'; +part 'min_length_validation.dart'; +part 'min_validation.dart'; +part 'must_have_lowercase_validation.dart'; +part 'must_have_numbers_validation.dart'; +part 'must_have_special_character_validation.dart'; +part 'must_have_uppercase_validation.dart'; +part 'not_empty_validation.dart'; +part 'not_equal_validation.dart'; +part 'range_validation.dart'; +part 'valid_cep_validation.dart'; +part 'valid_cnpj_validation.dart'; +part 'valid_cpf_validation.dart'; +part 'valid_creditcard_validation.dart'; +part 'valid_email_validation.dart'; diff --git a/lib/src/validators/validators.dart b/lib/src/validators/validators.dart deleted file mode 100644 index e9d8330..0000000 --- a/lib/src/validators/validators.dart +++ /dev/null @@ -1,25 +0,0 @@ -import '../../lucid_validation.dart'; - -part 'equal_validator_validator.dart'; -part 'greater_than_validator.dart'; -part 'is_empty_validator.dart'; -part 'is_not_null_validator.dart'; -part 'is_null_validator.dart'; -part 'less_then_validator.dart'; -part 'matches_pattern_validator.dart'; -part 'max_length_validator.dart'; -part 'max_validator.dart'; -part 'min_length_validator.dart'; -part 'min_validator.dart'; -part 'must_have_lowercase_validator.dart'; -part 'must_have_numbers_validator.dart'; -part 'must_have_special_character_validator.dart'; -part 'must_have_uppercase_validator.dart'; -part 'not_empty_validator.dart'; -part 'not_equal_validator.dart'; -part 'range_validator.dart'; -part 'valid_cep_validator.dart'; -part 'valid_cnpj_validator.dart'; -part 'valid_cpf_validator.dart'; -part 'valid_creditcard_validator.dart'; -part 'valid_email_validator.dart'; diff --git a/pubspec.yaml b/pubspec.yaml index 6cc4760..e7717fd 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -3,7 +3,7 @@ description: "A Dart/Flutter package for building strongly typed validation rule repository: https://github.com/Flutterando/lucid_validation homepage: https://pub.dev/documentation/lucid_validation/latest/ -version: 0.0.5 +version: 0.0.6 environment: sdk: ">=3.0.0 <4.0.0" diff --git a/test/lucid_validation_test.dart b/test/lucid_validation_test.dart index 6935361..e236fe1 100644 --- a/test/lucid_validation_test.dart +++ b/test/lucid_validation_test.dart @@ -4,7 +4,7 @@ import 'mocks/mocks.dart'; void main() { test('when validating [UserEntityMock] should return a list of error messages for the email field', () { - final validator = UserValidation(); + final validator = UserValidator(); final userEntity = UserModel( email: '', password: 'Teste@1234', @@ -21,7 +21,7 @@ void main() { }); test('when validating [UserModel] should return a list of error messages for the password field', () { - final validator = UserValidation(); + final validator = UserValidator(); final userEntity = UserModel( email: 'teste@gmail.com', password: '', @@ -42,7 +42,7 @@ void main() { }); test('when validating [UserModel] should return a list of error messages for the age field', () { - final validator = UserValidation(); + final validator = UserValidator(); final userEntity = UserModel( email: 'teste@gmail.com', password: 'Teste@1234', @@ -58,7 +58,7 @@ void main() { }); test('when validating [UserModel] should return a list of error messages for the phone field', () { - final validator = UserValidation(); + final validator = UserValidator(); final userEntity = UserModel( email: 'teste@gmail.com', password: 'Teste@1234', @@ -74,7 +74,7 @@ void main() { }); test('when validating [UserModel] should return a list of error messages for all fields', () { - final validator = UserValidation(); + final validator = UserValidator(); final userEntity = UserModel( email: '', password: '', @@ -97,7 +97,7 @@ void main() { confirmPassword: '123asdASD@', password: '123asdASD@', ); - final registerValidator = CredentialsRegisterValidation(); + final registerValidator = CredentialsRegisterValidator(); var errors = registerValidator.validate(credentials); diff --git a/test/mocks/mocks.dart b/test/mocks/mocks.dart index 4006a9e..3f4bc8b 100644 --- a/test/mocks/mocks.dart +++ b/test/mocks/mocks.dart @@ -17,8 +17,8 @@ class UserModel { factory UserModel.empty() => UserModel(email: '', password: '', age: 18, phone: ''); } -class UserValidation extends LucidValidation { - UserValidation() { +class UserValidator extends LucidValidator { + UserValidator() { ruleFor((user) => user.email, key: 'email') // .notEmpty() .validEmail(); @@ -79,8 +79,8 @@ class CredentialsRegister { } } -class CredentialsRegisterValidation extends LucidValidation { - CredentialsRegisterValidation() { +class CredentialsRegisterValidator extends LucidValidator { + CredentialsRegisterValidator() { ruleFor((credentials) => credentials.email, key: 'email') // .notEmpty() .validEmail();