Commit graph

1552 commits

Author SHA1 Message Date
Henrique Moody d7ebb8c1a7
Remove "Interface" suffix from exceptions
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-27 16:12:05 +02:00
Henrique Moody 167c97bb83
Ensure names are always string
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-27 16:12:05 +02:00
Henrique Moody 64ec329663
Remove findMessages() from NestedValidationException 2018-05-27 16:12:05 +02:00
Henrique Moody 9c81498395
Do not overwrite method configure()
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-27 16:12:05 +02:00
Henrique Moody d85668c359
Convert message keys to string
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-27 16:12:05 +02:00
Henrique Moody c26db7287f
Use getMessage() instead of getMainMessage()
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-27 16:12:05 +02:00
Henrique Moody 5d0ecabfdc
Declare visibility for constants
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-27 16:12:05 +02:00
Henrique Moody aa4b111c90
Fix wrong templates
The "MinimumAge" exception should use the "{{ name }}" placeholder
instead of the "{{ input }}" once that one can be either the input or a
user-defined name.

In the default message, the placeholder was using sprintf format, but
the correct way is to use "{{name}}". Also use the same style of the
other messages in the default message.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-27 16:12:05 +02:00
Henrique Moody 0e81792ec8
Remove method stringify from ValidationException
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-27 16:12:05 +02:00
Henrique Moody f7a4180541
Run PHP Coding Standards Fixer on Travis
If after executing php-cs-fixer any file must be changed the build
should not pass.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-27 16:08:42 +02:00
Henrique Moody bc472a6f0e
Fix coding standards
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-24 08:46:49 +02:00
Henrique Moody e203f8aec5
Apply contribution guidelines to "ObjectType" rule
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-19 19:12:59 +02:00
Henrique Moody 34d42a0d70
Apply contribution guidelines to "CallableType" rule
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-19 17:07:59 +02:00
Henrique Moody 47eaea6f28
Merge branch '1.1' 2018-05-19 16:46:58 +02:00
Tim Bond 020ea1ebb5
Update type parameters for Validator doc blocks
The "@param" tag uses phpdoc types. However the "@method" tag uses PHP's
type declarations. Therefore, "mixed" refers to a class whose literal
name is mixed and not the "mixed" keyword. Since "mixed" is not a valid
class name in this context, the type paramaters should be removed.

Additionally, the "callable" type paramater can be used on the
"callback" validation method.

References:
[1]: http://docs.phpdoc.org/references/phpdoc/tags/param.html
[2]: http://docs.phpdoc.org/references/phpdoc/types.html
[3]: http://docs.phpdoc.org/references/phpdoc/tags/method.html
[4]: http://php.net/functions.arguments#functions.arguments.type-declaration
[5]: http://docs.phpdoc.org/references/phpdoc/types.html
Reviewed-by: Henrique Moody <henriquemoody@gmail.com>
2018-05-19 16:26:44 +02:00
Tim Bond 4c996258a1
Update NestedValidationException doc block 2018-05-19 16:19:16 +02:00
MacFJA df985765a6
Update French subdivision codes 2018-05-19 16:18:28 +02:00
Henrique Moody cb4fb83b3e
Revert "Elaborated API styles documentation"
This reverts commit eb2621fafe.
2018-05-19 16:17:57 +02:00
Henrique Moody 5c598cdce2
Revert "Add link to support issues."
This reverts commit 62e1170a21.
2018-05-19 16:17:52 +02:00
Henrique Moody c6b6a4c425
Revert "Tested and fixed documentation"
This reverts commit 4357349ff0.
2018-05-19 16:17:47 +02:00
Bram Van der Sype 7b5a2928ff Apply contribution guidelines to "NotEmpty" rule 2018-05-02 16:04:05 +02:00
Antonio e2677d99d9
Clarify array validation
Clarify more complex array validation with an example in the
documentation.
2018-04-26 16:20:58 +02:00
Nick Lombard 4357349ff0
Tested and fixed documentation
Fixed concrete and builder api documentation
2018-04-22 12:35:48 +02:00
Nick Lombard 62e1170a21
Add link to support issues.
Added link issues filtered by label support
2018-04-22 01:33:48 +02:00
Nick Lombard eb2621fafe
Elaborated API styles documentation
Transferred documentation from issue #90 Dynamic chaining
2018-04-22 01:12:42 +02:00
Emmerson Siqueira 2bcc164b35
Apply contribution guidelines to "ArrayVal" rule
Signed-off-by: Emmerson Siqueira <emmersonsiqueira@gmail.com>
2018-04-02 23:19:22 +02:00
Henrique Moody bfdea5b5bd
Apply contribution guidelines to "ResourceType" rule
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-03-27 00:44:48 +02:00
Henrique Moody ad9cab5daf
Apply contribution guidelines to "NullType" rule
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-03-27 00:32:05 +02:00
Henrique Moody 435187298a
Apply contribution guidelines to "IntType" rule
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-03-27 00:25:26 +02:00
Henrique Moody ec8cb734b3
Apply contribution guidelines to "FloatType" rule
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-03-27 00:17:34 +02:00
Henrique Moody 8465180062
Apply contribution guidelines to "BoolType" rule
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-03-27 00:09:58 +02:00
Henrique Moody 8ad7b208c2
Fix coding standards in PHPT file 2018-03-26 23:25:20 +02:00
Henrique Moody 10ce811f0e Make "Between" rule extend "AbstractEnvelop"
The "Between" rule is composed by two rules: "Min" and "Max". However it
has its specific exception and message. This commit makes it extend the
"AbstractEnvelop" class.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-03-22 19:47:57 +01:00
Henrique Moody e879c62f60 Create "AbstractEnvelope" class
This abstract class is very similar to "AbstractWrapper" the difference
is that "AbstractWapper" will throw the exceptions of the rule that is
defined inside it, while "AbstractEnvelope" uses the exception of the
rule that extends it.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-03-22 19:41:10 +01:00
Henrique Moody 04b3c78ba7 Use ValidationException when no exception is found
Before this change every create rule must have an exception. This commit
allows to create rules without specific exceptions, so when the
exception of the rule is not found Validation uses ValidationException
instead.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-03-22 19:28:53 +01:00
Emmerson Siqueira ad61c49eca Apply contribution guidelines to "ArrayType" rule 2018-03-16 11:19:14 +01:00
Henrique Moody 2069e706b8
Apply contribution guidelines to "StringType" rule
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
Co-authored-by: Emmerson Siqueira <emmersonsiqueira@gmail.com>
2018-03-09 15:56:10 +01:00
Henrique Moody 848c57d5ed
Apply contribution guidelines to "ScalarVal" rule
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
Co-authored-by: Emmerson Siqueira <emmersonsiqueira@gmail.com>
2018-03-09 15:07:58 +01:00
Burhan Ali f03a09aa24 Replace fabpot/php-cs-fixer with friendsofphp/php-cs-fixer
The fapbot version is abandoned accord to packagist and suggests the
friendsofphp version.
2018-03-08 13:11:30 +00:00
Henrique Moody a796d9e981
Update license to MIT 2018-03-03 19:06:38 +01:00
Henrique Moody b696070874
Refactor "KeySet" rule
Do not extend AllOf exception, but instead extend "AbstractWrapper".
2018-03-03 18:59:36 +01:00
Henrique Moody 60e3fc3740
Refactor "Between" rule
The "Between" rule was extending the "AllOf" rule and adding "Max" and
"Min" rules to the chain. Because of that, when the rule failed we could
get the "MinException" or the "MaxException" exception, and only if both
failed that we would get the "BetweenException".

With this change it will always get the "BetweenException" which makes
it more explicit.

Also, the "Between" is not using the same standard required in the
Contribution Guidelines.
2018-03-03 18:06:26 +01:00
Henrique Moody 8d44bc3407
Refactor rules related to age
The "Age" rule was removed because it had too many responsibilities.
Instead "MaximumAge" was created (since there is already "MinimumAge").

This commit also introduces "AbstractAge" rule that is been used in both
mentioned rules.
2018-02-24 09:28:54 +01:00
Jens Segers 51ce465b8c
Create "Nullable" rule 2018-02-23 09:20:51 +01:00
Henrique Moody 92a8ab13cf
Fix coding standards
These are the changes after running the last version of PHP-CS-Fixer.
2018-02-04 01:00:30 +01:00
Henrique Moody fb2ebaf5d6
Apply contribution guidelines to "DateTime" rule
This commit also makes some changes in how the `DateTime` rule behaves,
by not accepting `DateTimeInterface` as valid when a format is given.

Also:
- Create `DateTimeHelper` to eliminate some code duplication;
- Create integration tests for `DateTime` rule;
- Rename "format" placeholder to "sample" in the message;
- Update documentation of "DateTime" rule.
2018-01-30 20:17:10 +01:00
Henrique Moody 2007c7dc6e
Create "Time" rule 2018-01-30 09:47:41 +01:00
Henrique Moody 0db1cd6e1b
Create "Date" rule 2018-01-29 09:39:57 +01:00
Henrique Moody c80524b457
Method assert() should not have a return value
One this method should throw an exception when the input is not valid,
returning `TRUE` when it succeeds is not really consistent.
2018-01-28 17:38:40 +01:00
Henrique Moody 30dc089565
Method check() should not have a return value
One this method should throw an exception when the input is not valid,
returning `TRUE` when it succeeds is not really consistent.
2018-01-28 17:38:40 +01:00