Commit graph

1196 commits

Author SHA1 Message Date
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
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
Henrique Moody ccf60f0ee3
Method validate() should always return a boolean 2018-01-28 17:38:36 +01:00
Henrique Moody aa7d84c3ea
Refactor "AbstractWrapper" class
This commit also creates `AbstractLocaleWrapper` to help creating
locale-based rules.
2018-01-28 13:20:27 +01:00
Henrique Moody 550795c1e2
Move namespace "SubdivisionCode" to "Locale" 2018-01-28 13:06:55 +01:00
Henrique Moody 8a09799e7e
Also read private properties of parent classes 2018-01-28 13:06:10 +01:00
Henrique Moody 9bad066765
Apply contribution guidelines to "AbstractSearcher"
Refactor `AbstractSearcher` class and its children. Also most of the
unnecessary logic that was on `AbstractSearcher` was put back into `In`
class.

This commit also updates all "SubdivisionCode" rules.

The script used to create the classes can be found on:
https://gist.github.com/henriquemoody/ec404f994a87b18c7771
2018-01-19 21:41:34 +01:00
Henrique Moody c33bcce239
Create UndefinedHelper trait
In order to remove some code duplication and make this validation
reusable that the trait `UndefinedHelper` is being created.
2018-01-18 21:02:01 +01:00
Henrique Moody 2a2bb6dd76
Apply contribution guidelines to "Identical" rule 2018-01-15 09:35:22 +01:00
Henrique Moody 02b51782c3
Apply contribution guidelines to "Equals" rule 2018-01-15 09:16:45 +01:00
Henrique Moody 1f217dda66
Refactor Factory class
With this code the Factory class will be used also to create Exceptions.

In order to do that, the AbstractRule::reportError() was changed, so the
tests of the AbstractRule class.

What this commit also does:
- Port code to PHP 7;
- Do not keep the default instance of the Factory in the Validator
  class;
- Make Factory final.
2018-01-14 16:26:35 +01:00
Henrique Moody 2d7e2ea48f
Add "respect/stringifier" as dependency
Due to this change it was possible to identify that NotEmptyException,
and NotOptionalException where not working as they should. A fix was
made along with this commit.
2018-01-06 14:07:03 +01:00
Henrique Moody ef975629f3
Changes on PHP-CS-Fixer configuration
Because of `declare(strict_types=1)` some changes were necessary.
2018-01-04 17:59:37 +01:00
Henrique Moody b10206bd28
Merge branch '1.1' 2018-01-02 22:57:58 +01:00
Henrique Moody ee9e69776a
Merge branch '1.0' into 1.1 2018-01-02 22:47:22 +01:00
Henrique Moody c931e2504b
Change conditions for Domain validation
Domains can have `--` as long as they don't start or end with `-` in its
parts.
2018-01-02 22:24:43 +01:00
Henrique Moody 37a71de7d0
Try to find template from default templates first
When executing `ValidationException::setTemplate()` using a template
key, it does not try to select the template, but instead it uses the
template key as the template itself.

In order to fix this behaviour, there is now a check for a key with the
defined template. In case the template was not found, use the defined
template as the template itself.
2018-01-02 21:56:07 +01:00
Henrique Moody 5b7ea399c0
Fix coding standards 2017-11-12 14:21:46 +01:00
Henrique Moody d8e5f305a7
Remove "malkusch/bav" as a dependency
This packages is not maintained anymore, therefore it should be removed
from our codebase.
2017-11-12 13:59:05 +01:00
Henrique Moody 20979898c5
Merge branch '1.1' 2017-10-17 12:38:16 +02:00
Henrique Moody 22f1f14430
Merge branch '1.0' into 1.1 2017-10-17 12:15:51 +02:00
Henrique Moody 14572537fe
Improve "Phone" rule
- Only allow spaces and not "\t" or "\n";
- Once the number has a "(", it needs a ")".
2017-10-17 09:51:09 +02:00
RCooLeR 191ee47fc0
Update regex of "Phone" rule
Now regex also matches +1 (555) 555 5555
2017-10-17 08:58:47 +02:00
mazanax 8b3790103e
Create "Luhn" rule 2017-10-16 20:38:56 +02:00
Henrique Moody fd1964d887
Merge branch '1.1' 2017-10-16 10:43:22 +02:00
Henrique Moody 631affdbf2
Merge branch '1.0' into 1.1 2017-10-16 10:39:15 +02:00
Tim Strijdhorst c013fac277
Fix currency code for Belarusian Ruble
References:
- https://en.wikipedia.org/wiki/ISO_4217
- http://www.xe.com/iso4217.php
2017-10-16 10:16:47 +02:00
Lars Decker a17e5e74bc
Add missing "MinimumAge" parameter 2017-10-15 19:52:26 +02:00
Jens Segers 7d42813fb7
Create "Base64" rule 2017-10-15 19:38:31 +02:00
Dick van der Heiden 327297ca6f
Create "Uuid" rule 2017-10-15 18:34:38 +02:00
Ian d65e713080
Improve grammar of "Equals" rule 2017-10-15 18:27:36 +02:00
Mikhail Vyrtsev 41658279e8 Codestyle fixed according to @nickl- 2017-06-29 16:26:47 +03:00
Mikhail Vyrtsev c50c27eecb Removed unwanted semicolon 2017-06-29 15:49:48 +03:00
Mikhail Vyrtsev 19174a8cb1 Fix codestyle according to @nickl- 2017-06-29 15:36:09 +03:00
Mikhail Vyrtsev 017f78e89e Fix scrutinizer warning 2017-06-29 15:03:50 +03:00
Mikhail Vyrtsev ac3f9c8d78 Removed $cmp variable, creds to @nickl- 2017-06-29 14:40:09 +03:00
Mikhail Vyrtsev 53d4182b18 uhm, well, it was actually fine 2017-06-29 06:37:26 +03:00
Mikhail Vyrtsev 9c89018c22 all that before was wrong >_< >_< 2017-06-29 06:18:40 +03:00
Mikhail Vyrtsev ce3597bce5 fix assertion when neighbour values are equal 2017-06-29 05:54:48 +03:00
Mikhail Vyrtsev 8d8735cdd0 fix indentation >_< 2017-06-29 05:42:29 +03:00
Mikhail Vyrtsev 52c8541b9e New rule: Sorted 2017-06-29 05:18:02 +03:00
Henrique Moody 0338e18e83
Rename rule "Date" to "DateTime"
Also change rules to use `DateTimeInterface` and `DateTimeImmutable`
when possible.
2017-05-01 13:16:59 +02:00
Vitaliy 82f53d27e1
Create "Number" rule 2017-04-19 09:49:58 +02:00
Krzysztof Śmiałek 04e8b72908 Create "Unique" rule 2017-04-12 11:23:44 +02:00
Henrique Moody 4549938e30
Update subdivision codes 2017-04-12 10:54:07 +02:00
Senén b2faf8332b Fix Nif Validator 2017-04-11 23:16:58 +02:00
Henrique Moody 569506bc14
Fix wrong docblock on Validator class 2017-03-27 23:52:34 +02:00
Jonathan Stewmon 298102ba13 Use annotations for variadic methods 2017-03-27 13:37:47 +02:00
Bruno Koga a0ba215524
Create "Pis" rule 2017-03-27 11:42:24 +02:00
Jonathan Stewmon 8851fb5abc
Always display message for AbstractRelated rule
`NestedValidationException` should include all `AbstractRelated` rule
exceptions.

`AbstractRelated` rule failures always indicate an interesting nested
context, which should not be omitted from the final result.

`NonOmissibleExceptionInterface` is a marker interface for
exceptions thrown by instances of `AbstractRelated`, which
facilitates identification of those rules' exceptions with
`instanceof`.
2017-03-27 10:21:45 +02:00
Henrique Moody 2b8c560db4
Merge branch '1.1' 2017-03-14 10:46:47 +01:00
Henrique Moody 5ab87d1dd9
Merge branch '1.0' into 1.1 2017-03-14 10:44:11 +01:00
Henrique Moody dc869ac375
Only return "name" as is if it's a string 2017-03-14 10:28:03 +01:00
Henrique Moody b43c9b103b
Better message for Length rule
Update exception message when minimum value and maximum value are the
same.
2017-02-12 18:18:39 +01:00
Bogus bb5ad2d988
Replaced TLDs with current list from IANA 2017-02-08 09:22:25 +01:00
Henrique Moody 86623fc3ca
SimpleXMLElement can also be used as an array 2017-02-05 15:03:48 +01:00
Bradyn Poulsen d48b55a092
Create "OneOf" rule 2017-02-05 14:49:07 +01:00
Henrique Moody 7ee4ae47d5
Rename "OneOf" to "AnyOf" 2017-02-05 12:28:08 +01:00
Henrique Moody 27d35987be
Create "StringVal" rule 2017-02-04 15:16:00 +01:00
Henrique Moody 25bffa00e2
Merge branch '1.1' 2017-01-26 15:41:19 +01:00
Henrique Moody 03f4abbd08
Merge branch '1.0' into 1.1 2017-01-26 15:39:48 +01:00
Yosmany Garcia 8eb95c2b04
Updated provinces of Cuba
Updated provinces of Cuba according to the change of 2011
2017-01-26 15:38:38 +01:00
Michał Prochowski fa61315079
Czech and slovakia postal code patterns fix. 2017-01-26 15:37:37 +01:00
Renato Moura e4ae02fe94
Fix "Cnpj" rule 2017-01-25 17:41:21 +01:00
Yosmany Garcia 32414451b0
Updated provinces of Cuba
Updated provinces of Cuba according to the change of 2011
2017-01-25 17:36:24 +01:00
Bartłomiej Krukowski c9b78789a7 Invalid doc comment 2017-01-23 12:42:47 +01:00
Andy Snell 94a79c033a
Update MasterCard BIN Range
Updates the CreditCard validator regex for the MasterCard brand to match 16-digit card numbers starting with 22 - 27.  Additionally, updates the unit test for CreditCard with a published test card in the new BIN range.

Additional information on the BIN range update can be found at: https://www.mastercard.us/en-us/issuers/get-support/2-series-bin-expansion.html
2016-12-04 23:56:43 -05:00
Henrique Moody e708edd005
Rename rule "Numeric" to "NumericVal" 2016-11-06 18:45:44 +01:00
Henrique Moody 07a120d058
Upgrade "symfony/validator" version 2016-11-05 14:14:39 +01:00
Henrique Moody 6f5c623926
Use class constant instead of FQCN 2016-10-30 20:16:13 +01:00
Henrique Moody f34a34c0b2
Always use mbstring functions 2016-10-30 10:45:30 +01:00
Henrique Moody 4d72af312f
Update PHP-CS-Fixer settings 2016-10-30 10:39:23 +01:00
Henrique Moody f2bb77bb8e
Create tests for "egulias/email-validator" ~2.1 2016-10-29 15:37:09 +02:00
Henrique Moody c65e1e37f9
Merge branch '1.1' 2016-10-29 15:30:23 +02:00
Henrique Moody 710e807a68
Merge branch '1.0' into 1.1 2016-10-29 15:29:17 +02:00
Henrique Moody f82fcf0762
Prevent "Regex" to process non-string inputs 2016-10-29 15:21:14 +02:00
Henrique Moody bd636cc75e
Add support for "egulias/email-validator" 2.x 2016-10-29 15:20:13 +02:00
Julián Gutiérrez 195a8fe534
Create "Nif" rule
Rule to validate spanish NIF (DNI/NIE/CIF).
2016-10-09 17:50:52 +02:00
Henrique Moody 08ea9b7925
Merge branch '1.1' 2016-09-20 08:45:34 +02:00
Henrique Moody e457f19dbd
Merge branch '1.0' into 1.1 2016-09-20 08:44:39 +02:00
Henrique Moody 98050476c6
Always return a valid exception
If calling the method `getExceptionForPath()` when the exception was
nested but had no child it was returning null. This commit ensures that
it always return a valid exception.
2016-09-19 18:22:39 +02:00
Henrique Moody 6ee9776ea9
Merge branch '1.1' 2016-09-19 11:25:42 +02:00
Henrique Moody 3fa5bc0489
Merge branch '1.0' into 1.1 2016-09-19 11:24:33 +02:00
Emmerson d0a98ae5d3
Date rule accepting scalar and DateTimeInterface 2016-09-19 10:13:01 +02:00
Tomasz Regdos 38aedd01e3
Create "Vatin" rule (VAT identification number)
See https://en.wikipedia.org/wiki/VAT_identification_number
2016-09-19 09:50:50 +02:00
Henrique Moody 332b0d7bb6
Merge branch '1.1' 2016-09-19 09:33:16 +02:00
Henrique Moody c79d8fdf4f
Change file mode of "Image" rule 2016-09-19 09:32:42 +02:00
Gabriel Pedro a772d7f89a
Replace CNH validation algorithm
The old algorithm not working with some CNH values, e.g 00641829409.

You can even do some checking on
http://www.detran.pr.gov.br/modules/catasg/servicos-detalhes.php?tema=motorista&id=239.

Original algo can be found on
http://forum.imasters.com.br/topic/400293-validate-br.
2016-09-18 13:25:18 +02:00
Henrique Moody 4eb6d8090f
Merge branch '1.1' 2016-09-17 21:39:18 +02:00
Henrique Moody edf4e49ac6
Merge branch '1.0' into 1.1 2016-09-17 21:30:00 +02:00
Henrique Moody 4bcc4027f8
Try to use the getRelatedByName() method first
Then using the `findMessages()` method, tries to use the method
`getRelatedByName()` before using the `findRelated()` method.

This change was made because since on `KeyNested` rule you may have
names with '.' we'll never get the proper exception using
`findRelated()`.
2016-09-17 21:11:55 +02:00
Henrique Moody 98443bad0c
Get the proper exception when using findMessage() 2016-09-17 21:04:24 +02:00
Henrique Moody 494b67871f
Fix wrong behaviour on AbstractRelated
When you define the name for an `AbstractRelated` instance, you expect
that it also define the name for its child. But, when the child already
had a name the `AbstractRelated` was overwriting its name with the
`reference`.
2016-09-17 20:23:38 +02:00
Henrique Moody d716214258
Merge branch '1.1' 2016-09-13 11:33:55 +02:00
Henrique Moody 6d0e3a2422
Merge branch '1.0' into 1.1 2016-09-13 11:32:43 +02:00
Henrique Moody 7e88a7a0c8
Always check the type then executing KeyNested 2016-09-12 18:06:10 +02:00
Richard 8dd8032b0d AbstractComposite constructor has better practice 2016-08-04 09:12:09 +02:00
Henrique Moody fb471f9667 Remove deprecated "Iterable" rule 2016-08-03 11:08:22 +02:00
Henrique Moody 53b737513b Merge branch '1.0' into 1.1 2016-08-03 11:06:53 +02:00
Henrique Moody fb7f19f9ad Fix missing docblock for "iterableType" rule 2016-08-03 11:05:28 +02:00
Henrique Moody cc179f9209 Merge branch '1.0' into 1.1 2016-08-03 10:53:00 +02:00
Henrique Moody c044b8bb09 Cast integer to use with long2ip function 2016-08-03 10:43:33 +02:00
Henrique Moody e5fdd87a16 Rename "Iterable" to "IterableType" 2016-08-03 10:43:33 +02:00
Tomasz Regdos 73a9ff40eb Fix Pesel validator when first char is zero 2016-07-01 16:22:12 +02:00
Henrique Moody b8ecd59f48 Merge branch '1.0' into 1.1 2016-05-07 20:54:08 +02:00
Marcel Prince 6597aa5114 Add method Identical To Validator.php 2016-05-07 20:51:56 +02:00
Henrique Moody 3e1988f9c1 Merge branch '1.0' into 1.1 2016-05-05 13:03:25 +02:00
Emmerson d9a4c78b16 Fixes 'KeySet' rule when input is not array type 2016-05-05 13:01:04 +02:00
Kennedy Tedesco cca733919c Throw an exception when age is not an integer 2016-04-23 21:43:19 -03:00
Augusto Pascutti 9460a4c237 Ensure namespace separator on appended prefixes
Appending a prefix to search new rules under required that the namespace
(prefix) being added always ended with a trailing namespace character so
rules could successfully be found under it. This ensures that the
separator is always present.

Changes a test for a rule which does not implement Respect's interface
to an actual class so we don't need to declare one to use as a stub.
2016-04-23 21:20:54 -03:00
Henrique Moody bb0e40a08e Set template for the only rule in the chain
When there is just one rule in the chain and the there is a defined
template for that, the expected behaviour when using the `check()`
method is to see the exception message with the defined template.
2016-04-08 13:39:57 -03:00
Henrique Moody 46541c7e46 Allow the define brands for credit card validation 2016-04-06 16:42:49 -03:00
Henrique Moody f3ad53dd14 Merge branch '1.0' 2016-03-31 14:44:58 -03:00
Henrique Moody 294368294f Merge branch '0.9' into 1.0 2016-03-31 14:39:15 -03:00
Henrique Moody 7d978d64e3 Merge branch '0.8' into 0.9 2016-03-31 14:26:10 -03:00
Henrique Moody eecc696792 Fix wrong date parsing on Date rule
The `DateTime::createFromFormat()` tries to guess the date too much and
sometimes wrong parsing may happen:

```php
echo DateTime::createFromFormat('Ym', '202309')->format('Ym');
```

The output of the above code is "202310", not "202309".

Using `date_parse_from_format()` we get a more precise parsing.
2016-03-31 14:18:22 -03:00
Emmerson f40eb63d7b Create "PhpLabel" rule 2016-03-04 21:48:25 -03:00
Henrique Moody b1d0acc2e5 Fix some coding standards with php-cs-fixer 2016-03-04 21:42:27 -03:00
Henrique Moody 78449ce9b0 Merge branch '1.0' 2016-02-26 12:22:33 -03:00
Henrique Moody 4b2f159206 Merge branch '0.9' into 1.0 2016-02-26 12:21:26 -03:00
Henrique Moody 7febcf3dd6 Merge branch '0.8' into 0.9 2016-02-26 12:20:26 -03:00
Alasdair North 3bf4957caf AbstractWrapper should pass on setName calls to the wrapped Validatable. 2016-02-26 12:18:05 -03:00
Samuel Heinzmann ce3f885862 Create "Fibonacci" rule 2016-02-13 14:02:21 -02:00
Blake Hair 1bd8114150 Length gets length of integers 2016-02-13 13:50:24 -02:00
Caio César Tavares d1c3b2596e Define names for the child of Not rule 2016-02-13 13:48:10 -02:00
Henrique Moody c2eece6785 Create "IdentityCard" rule
Original-Author: Tomasz Regdos <tomek@regdos.com>.
2016-01-13 22:57:11 -02:00
Henrique Moody 0662db2a93 Improve tests for Pesel rule
Also increases validation on this rule.
2016-01-13 21:17:05 -02:00
Tomasz Regdos b8da3a947b Create "Pesel" rule
Create validator for PESEL - Polish Human Identification Number.
2015-12-17 11:25:57 -02:00
Guilherme Siani c828420438 Create "Image" rule 2015-12-14 10:14:26 -02:00
Henrique Moody 799228a6e0 Merge branch '1.0' 2015-11-25 18:05:51 -02:00
Henrique Moody b85ed687f2 Merge branch '0.9' into 1.0 2015-11-25 17:59:49 -02:00
Henrique Moody d63cae970b Merge branch '0.8' into 0.9 2015-11-25 17:54:31 -02:00
Tomasz Regdos ecf4d5bb63 Fix PL postal code format 2015-11-25 17:44:59 -02:00
Henrique Moody db8d8a04f5 Merge branch '1.0' 2015-11-06 12:27:25 -02:00
Henrique Moody 7aaa5c0a83 Merge branch '0.9' into 1.0 2015-11-06 12:25:14 -02:00
Henrique Moody bf5c0bf132 Merge branch '0.8' into 0.9 2015-11-06 12:19:53 -02:00
Felipe Martins e4622df22c PerfectSquare rule check if the sqrt is an integer 2015-11-06 12:11:15 -02:00
Andrew Peters 08a5ab0d81 Use "{less/greater} than or equal to" phrasing 2015-11-04 15:37:43 -02:00
Emmerson bb02f5ef43 There's no class extending AbstractCountryInfo 2015-11-04 15:34:48 -02:00
Henrique Moody 7bc0cb94f3 Merge branch '1.0' 2015-11-04 15:17:55 -02:00
Henrique Moody 00c015c870 Merge branch '0.9' into 1.0 2015-11-04 15:16:26 -02:00
Henrique Moody c521918fd0 Merge branch '0.8' into 0.9 2015-11-04 15:13:07 -02:00
Kennedy Tedesco b98595a5c0 "MinimumAge" rule must accept any kind of integer 2015-11-04 15:08:10 -02:00
Henrique Moody e6ba59185c Merge branch '1.0' 2015-10-28 14:51:30 -02:00
Emmerson 58461766e4 Improvements on Each rule and test classes. 2015-10-28 14:50:53 -02:00
Emmerson 621b4707b5 Create "LanguageCode" rule 2015-10-26 23:12:21 -03:00
Emmerson d579ce4efc CountryCode inherits from AbstractRule instead 2015-10-26 13:35:13 -02:00
Henrique Moody cd46545855 Small coding standards and docs improvements 2015-10-24 01:32:07 -02:00
Henrique Moody 474afaa2ec Remove "ValidationExceptionInterface" 2015-10-23 09:00:31 -02:00
Henrique Moody 67e072ebd3 Remove "NestedValidationExceptionInterface" 2015-10-23 09:00:18 -02:00
Henrique Moody 04db93bdad Remove prefix "Abstract" of non-abstract classes 2015-10-23 09:00:08 -02:00
Diego Oliveira 70997912eb Create "Imei" rule 2015-10-23 07:53:59 -02:00
Alexandre Gaigalas 84fa389d4c Implements numeric Key/KeyNested Addressing
The Key and KeyNested rules didn't supported numeric
addressing (e.g. `v::key(42);`). This change implements it and
adds new tests for the behavior.
2015-10-22 10:35:58 -02:00
Henrique Moody 8c9c587597 Improvements and fixes on exceptions
There were some cases when the exceptions was not displayed property
when using nested exception, this commit fix the problem and also
display messages in Markdown list.
2015-10-22 03:01:41 -02:00
Henrique Moody 03c0bd03de Update message after changing exception properties 2015-10-21 04:14:11 -02:00
Emmerson 29bdb0a9f6 Create "BoolVal" rule 2015-10-21 01:35:05 -03:00
Henrique Moody e2b02b9777 Increase code coverage of rules 2015-10-19 14:17:47 -02:00
Emmerson dddad80f48 Improvements on JSON rule 2015-10-19 11:57:42 -02:00
Guilherme Siani 1c254ab682 Refactor "ArrayVal" rule and add integration tests 2015-10-18 18:50:07 -02:00
João Torquato f08a1fa9fc Create "ArrayType" rule 2015-10-18 18:01:11 -02:00
Guilherme Siani 767fcaaccf Create "Iterable" rule 2015-10-18 17:27:25 -02:00
Reginaldo Junior 7398588c56 Create "FloatType" rule 2015-10-18 16:57:49 -02:00
Henrique Moody f0d249346f Complete tests for "AbstractRule" class 2015-10-18 16:22:43 -02:00
Justin Hook 4145faab39 Create "CurrencyCode" rule 2015-10-18 14:42:39 -02:00
João Torquato a3694241f2 Create "Countable" rule 2015-10-18 11:37:50 -02:00
Henrique Moody 9c49dd3bcf Use short array syntax 2015-10-17 22:56:32 -03:00
Antonio Spinelli c6638b9ffb Create integration tests for "When" rule 2015-10-17 21:53:43 -03:00
Felipe Martins 141103f085 Improve "CountryCode" rule
Add "alpha-3" and "numeric" country codes and unit test for it.
2015-10-17 16:42:43 -03:00
Alexandre Gaigalas 9c03380f24 Adds partial test suite for AbstractRule 2015-10-17 16:02:12 -03:00
Hussani Oliveira 667d0eca03 Removing unused $current variable 2015-10-17 15:33:45 -03:00
Henrique Moody 06ecd9c063 Drop support for PHP 5.3 2015-10-17 12:55:52 -03:00
Henrique Moody 60568eac62 Create "IntType" rule 2015-10-16 23:43:01 -03:00
Ronald Drenth 8cab57052e Create "Bsn" rule 2015-10-16 22:19:33 +02:00
Henrique Moody d53811f7b7 Remove user-defined optional values
Since we have NotOptional rule now, we must keep the same opposite
behaviour between these two rules.

This commit also improve and increase tests from Optional rule and
updates the documentation.

No tests was made for messages on MODE_DEFAULT because it's not possible
for a while since we don't have such much granularity control, but after
some fixes on Not rule, maybe we will be able to do that, that's why I
kept the messages on OptionalException.
2015-10-15 11:14:20 -03:00
Henrique Moody 15b0a937b2 Create "NotOptional" rule 2015-10-15 10:36:48 -03:00
Henrique Moody 6f9a5771c2 Fix "Not" rule on first level 2015-10-14 13:56:29 -03:00
Henrique Moody 62761ffe18 Make all rules inclusive by default 2015-10-14 13:10:20 -03:00
Henrique Moody bbf9c2505e Remove all rules shortcuts 2015-10-14 13:06:36 -03:00
Henrique Moody 880cdb5f09 Create "NotBlank" rule 2015-10-14 01:05:42 -03:00
Henrique Moody b28e97c70f Create "Identical" rule 2015-10-13 13:29:34 -03:00
Henrique Moody 641b169c1b Remove identical checking from "Equals" rule 2015-10-13 13:29:31 -03:00
Henrique Moody 5a9f1fe508 Create "KeyValue" rule 2015-10-13 07:37:12 -03:00
Ivan Zinovyev 91e9c2053d Create "KeyNested" rule 2015-10-07 14:03:19 -03:00
Henrique Moody 1931da7570 Rename rule "Scalar" to "ScalarVal" 2015-10-07 12:44:20 -03:00
Henrique Moody 88865267d9 Rename rule "Resource" to "ResourceType" 2015-10-07 12:44:19 -03:00
Henrique Moody 598bfa2843 Rename rule "Object" to "ObjectType" 2015-10-07 12:44:19 -03:00
Henrique Moody 5941c2ce50 Rename rule "NullValue" to "NullType" 2015-10-07 12:44:13 -03:00
Henrique Moody 5863903e48 Rename rule "Arr" to "ArrayVal" 2015-10-07 12:25:15 -03:00
Henrique Moody 255269bfb3 Rename rule "String" to "StringType" 2015-10-07 11:52:03 -03:00
Henrique Moody 9b85df4601 Rename rule "Int" to "IntVal" 2015-10-07 11:46:57 -03:00
Henrique Moody 3e1f86baf8 Rename rule "Float" to "FloatVal" 2015-10-07 11:42:37 -03:00
Henrique Moody 7f2cdceb31 Rename rule "True" to "TrueVal" 2015-10-07 11:38:24 -03:00
Henrique Moody fef01d7e09 Rename rule "False" to "FalseVal" 2015-10-07 11:36:31 -03:00
Henrique Moody 0ae5d25de7 Rename rule "Bool" to "BoolType" 2015-10-07 11:30:29 -03:00
Henrique Moody 937fa6b183 Create documentation for message localization
Also define the `translator` param to the related rules in
`AbstractNestedException`.
2015-10-07 10:18:31 -03:00
Henrique Moody 455ff9b318 Create "Optional" rule 2015-10-07 02:44:33 -03:00
Henrique Moody 3e45647b81 Make all rules mandatory 2015-10-07 01:00:39 -03:00
Henrique Moody 3fbc45d44f Add country code to postal code exception message 2015-09-24 00:49:25 -03:00
Henrique Moody 9ab672d489 Fix bugs on "SubdivisionCode" rule
The last commit was a cherry-pick from a long time ago, so the test was
into a different repository which could not be seen by PHPUnit. I moved
the tests and them I could see that the rule had some bugs and wrong
exception messages.
2015-09-22 10:08:17 -03:00
Henrique Moody 6c9a0e7228 Create "SubdivisionCode" rule 2015-09-21 13:54:02 -03:00
Henrique Moody 28711d0a45 Create "ZwSubdivisionCode" rule 2015-09-21 13:28:01 -03:00
Henrique Moody a42d26169e Create "ZmSubdivisionCode" rule 2015-09-21 13:28:00 -03:00
Henrique Moody 63aa4d30e5 Create "ZaSubdivisionCode" rule 2015-09-21 13:28:00 -03:00
Henrique Moody a038a709ab Create "YtSubdivisionCode" rule 2015-09-21 13:27:59 -03:00
Henrique Moody e11ba9f367 Create "YeSubdivisionCode" rule 2015-09-21 13:27:59 -03:00
Henrique Moody bab0ecec43 Create "XkSubdivisionCode" rule 2015-09-21 13:27:58 -03:00
Henrique Moody 7395cf1684 Create "WsSubdivisionCode" rule 2015-09-21 13:27:58 -03:00
Henrique Moody e7b0f526e8 Create "WfSubdivisionCode" rule 2015-09-21 13:27:58 -03:00
Henrique Moody 569764d788 Create "VuSubdivisionCode" rule 2015-09-21 13:27:58 -03:00
Henrique Moody 1977db5c46 Create "VnSubdivisionCode" rule 2015-09-21 13:27:57 -03:00
Henrique Moody 3ab981cd89 Create "ViSubdivisionCode" rule 2015-09-21 13:27:56 -03:00
Henrique Moody 99e0f4e746 Create "VgSubdivisionCode" rule 2015-09-21 13:27:56 -03:00
Henrique Moody e2af314dd2 Create "VeSubdivisionCode" rule 2015-09-21 13:27:56 -03:00
Henrique Moody d292e1b6d1 Create "VcSubdivisionCode" rule 2015-09-21 13:27:56 -03:00
Henrique Moody a68e529185 Create "VaSubdivisionCode" rule 2015-09-21 13:27:55 -03:00
Henrique Moody 916ed4c6d3 Create "UzSubdivisionCode" rule 2015-09-21 13:27:55 -03:00
Henrique Moody b6f15ab793 Create "UySubdivisionCode" rule 2015-09-21 13:27:55 -03:00
Henrique Moody 665cd6b2c3 Create "UsSubdivisionCode" rule 2015-09-21 13:27:55 -03:00
Henrique Moody b34c3a490a Create "UmSubdivisionCode" rule 2015-09-21 13:27:54 -03:00
Henrique Moody ff554601eb Create "UgSubdivisionCode" rule 2015-09-21 13:27:54 -03:00
Henrique Moody b8eb3d5a96 Create "UaSubdivisionCode" rule 2015-09-21 13:27:54 -03:00
Henrique Moody e42d1c08da Create "TzSubdivisionCode" rule 2015-09-21 13:27:53 -03:00
Henrique Moody abd86c54c9 Create "TwSubdivisionCode" rule 2015-09-21 13:27:53 -03:00
Henrique Moody eac5541bc6 Create "TvSubdivisionCode" rule 2015-09-21 13:27:53 -03:00
Henrique Moody 76089250d2 Create "TtSubdivisionCode" rule 2015-09-21 13:27:53 -03:00
Henrique Moody e19a0044ea Create "TrSubdivisionCode" rule 2015-09-21 13:27:52 -03:00
Henrique Moody aef7c856c4 Create "ToSubdivisionCode" rule 2015-09-21 13:27:52 -03:00
Henrique Moody 7757a00503 Create "TnSubdivisionCode" rule 2015-09-21 13:27:52 -03:00
Henrique Moody 97df05f05a Create "TmSubdivisionCode" rule 2015-09-21 13:27:51 -03:00
Henrique Moody 1c1a130b03 Create "TlSubdivisionCode" rule 2015-09-21 13:27:51 -03:00
Henrique Moody 8daccdb3bd Create "TkSubdivisionCode" rule 2015-09-21 13:27:51 -03:00
Henrique Moody addf104a61 Create "TjSubdivisionCode" rule 2015-09-21 13:27:50 -03:00
Henrique Moody 31b4d1b352 Create "ThSubdivisionCode" rule 2015-09-21 13:27:50 -03:00
Henrique Moody af8982ef94 Create "TgSubdivisionCode" rule 2015-09-21 13:27:50 -03:00
Henrique Moody 260e26dc2f Create "TfSubdivisionCode" rule 2015-09-21 13:27:49 -03:00
Henrique Moody bbdcb5d14e Create "TdSubdivisionCode" rule 2015-09-21 13:27:49 -03:00
Henrique Moody 01c765aff0 Create "TcSubdivisionCode" rule 2015-09-21 13:27:49 -03:00
Henrique Moody b6e906fa1c Create "SzSubdivisionCode" rule 2015-09-21 13:27:49 -03:00
Henrique Moody f75d86b0c3 Create "SySubdivisionCode" rule 2015-09-21 13:27:48 -03:00
Henrique Moody a9f551c805 Create "SxSubdivisionCode" rule 2015-09-21 13:27:48 -03:00
Henrique Moody 680d5f0ddb Create "SvSubdivisionCode" rule 2015-09-21 13:27:48 -03:00
Henrique Moody a838b60b40 Create "StSubdivisionCode" rule 2015-09-21 13:27:47 -03:00
Henrique Moody ecfe8c5c34 Create "SsSubdivisionCode" rule 2015-09-21 13:27:47 -03:00
Henrique Moody fc780a6375 Create "SrSubdivisionCode" rule 2015-09-21 13:27:47 -03:00
Henrique Moody 6b7062e764 Create "SoSubdivisionCode" rule 2015-09-21 13:27:47 -03:00
Henrique Moody 13a2523060 Create "SnSubdivisionCode" rule 2015-09-21 13:27:46 -03:00
Henrique Moody 125032e6e2 Create "SmSubdivisionCode" rule 2015-09-21 13:27:45 -03:00
Henrique Moody 411cb5215d Create "SlSubdivisionCode" rule 2015-09-21 13:27:45 -03:00
Henrique Moody 264cd1bdd9 Create "SkSubdivisionCode" rule 2015-09-21 13:27:45 -03:00
Henrique Moody e0501c3264 Create "SjSubdivisionCode" rule 2015-09-21 13:27:44 -03:00
Henrique Moody 9f82d491a4 Create "SiSubdivisionCode" rule 2015-09-21 13:27:44 -03:00
Henrique Moody d014c22be6 Create "ShSubdivisionCode" rule 2015-09-21 13:27:43 -03:00
Henrique Moody 71412af9c1 Create "SgSubdivisionCode" rule 2015-09-21 13:27:43 -03:00
Henrique Moody 00b41e1fc5 Create "SeSubdivisionCode" rule 2015-09-21 13:27:42 -03:00
Henrique Moody a9dc203140 Create "SdSubdivisionCode" rule 2015-09-21 13:27:41 -03:00
Henrique Moody 1e1e062cac Create "ScSubdivisionCode" rule 2015-09-21 13:27:41 -03:00
Henrique Moody ffd8155fc9 Create "SbSubdivisionCode" rule 2015-09-21 13:27:41 -03:00
Henrique Moody 9b687dd076 Create "SaSubdivisionCode" rule 2015-09-21 13:27:40 -03:00
Henrique Moody 41b46c5abf Create "RwSubdivisionCode" rule 2015-09-21 13:27:40 -03:00
Henrique Moody f372018149 Create "RuSubdivisionCode" rule 2015-09-21 13:27:40 -03:00
Henrique Moody f04b8265fd Create "RsSubdivisionCode" rule 2015-09-21 13:27:39 -03:00
Henrique Moody 1275bf0e48 Create "RoSubdivisionCode" rule 2015-09-21 13:27:38 -03:00
Henrique Moody d85acfaba2 Create "ReSubdivisionCode" rule 2015-09-21 13:27:38 -03:00
Henrique Moody c866d3fd31 Create "QaSubdivisionCode" rule 2015-09-21 13:27:37 -03:00
Henrique Moody c347130fad Create "PySubdivisionCode" rule 2015-09-21 13:27:36 -03:00
Henrique Moody 099da20ce1 Create "PwSubdivisionCode" rule 2015-09-21 13:27:36 -03:00
Henrique Moody d5ade8b809 Create "PtSubdivisionCode" rule 2015-09-21 13:27:35 -03:00
Henrique Moody b7e288781d Create "PsSubdivisionCode" rule 2015-09-21 13:27:35 -03:00
Henrique Moody 455939f4c6 Create "PrSubdivisionCode" rule 2015-09-21 13:27:35 -03:00
Henrique Moody 5fbbbb08e2 Create "PnSubdivisionCode" rule 2015-09-21 13:27:34 -03:00
Henrique Moody 7eabda4d8f Create "PmSubdivisionCode" rule 2015-09-21 13:27:34 -03:00
Henrique Moody 7e3ce6b76b Create "PlSubdivisionCode" rule 2015-09-21 13:27:33 -03:00
Henrique Moody b5015702ba Create "PkSubdivisionCode" rule 2015-09-21 13:27:33 -03:00
Henrique Moody 0c6f44d78f Create "PhSubdivisionCode" rule 2015-09-21 13:27:33 -03:00
Henrique Moody 32eddbb7bc Create "PgSubdivisionCode" rule 2015-09-21 13:27:33 -03:00
Henrique Moody 3b4a94bf4e Create "PfSubdivisionCode" rule 2015-09-21 13:27:32 -03:00
Henrique Moody d40d64ce50 Create "PeSubdivisionCode" rule 2015-09-21 13:27:32 -03:00
Henrique Moody af0ae3f7d9 Create "PaSubdivisionCode" rule 2015-09-21 13:27:32 -03:00
Henrique Moody fe898aea41 Create "OmSubdivisionCode" rule 2015-09-21 13:27:32 -03:00
Henrique Moody 2be2120b20 Create "NzSubdivisionCode" rule 2015-09-21 13:27:31 -03:00
Henrique Moody 72d974999a Create "NuSubdivisionCode" rule 2015-09-21 13:27:31 -03:00
Henrique Moody af7af91cb7 Create "NrSubdivisionCode" rule 2015-09-21 13:27:30 -03:00
Henrique Moody fcae00f2e0 Create "NpSubdivisionCode" rule 2015-09-21 13:27:30 -03:00
Henrique Moody b016a6fa6e Create "NoSubdivisionCode" rule 2015-09-21 13:27:30 -03:00
Henrique Moody 2fa9ae7948 Create "NlSubdivisionCode" rule 2015-09-21 13:27:29 -03:00
Henrique Moody a47e8ba2e5 Create "NiSubdivisionCode" rule 2015-09-21 13:27:29 -03:00
Henrique Moody f1f9ce316b Create "NgSubdivisionCode" rule 2015-09-21 13:27:29 -03:00
Henrique Moody a15d109a6c Create "NfSubdivisionCode" rule 2015-09-21 13:27:28 -03:00
Henrique Moody 4183ff5286 Create "NeSubdivisionCode" rule 2015-09-21 13:27:28 -03:00
Henrique Moody 4a413e0281 Create "NcSubdivisionCode" rule 2015-09-21 13:27:27 -03:00
Henrique Moody fed516c927 Create "NaSubdivisionCode" rule 2015-09-21 13:27:27 -03:00
Henrique Moody d067e735b2 Create "MzSubdivisionCode" rule 2015-09-21 13:27:27 -03:00
Henrique Moody e470c31e48 Create "MySubdivisionCode" rule 2015-09-21 13:27:26 -03:00
Henrique Moody 5c18951ca0 Create "MxSubdivisionCode" rule 2015-09-21 13:27:26 -03:00
Henrique Moody eda0167c91 Create "MwSubdivisionCode" rule 2015-09-21 13:27:25 -03:00
Henrique Moody 5acea60b1a Create "MvSubdivisionCode" rule 2015-09-21 13:27:25 -03:00
Henrique Moody b006238e5b Create "MuSubdivisionCode" rule 2015-09-21 13:27:24 -03:00
Henrique Moody 0e41f23a0e Create "MtSubdivisionCode" rule 2015-09-21 13:27:24 -03:00
Henrique Moody 0e698c0705 Create "MsSubdivisionCode" rule 2015-09-21 13:27:24 -03:00
Henrique Moody 5880c06734 Create "MrSubdivisionCode" rule 2015-09-21 13:27:24 -03:00
Henrique Moody d1da659775 Create "MqSubdivisionCode" rule 2015-09-21 13:27:24 -03:00
Henrique Moody db246cea5a Create "MpSubdivisionCode" rule 2015-09-21 13:27:23 -03:00
Henrique Moody 3a0184ef99 Create "MoSubdivisionCode" rule 2015-09-21 13:27:23 -03:00
Henrique Moody 9cf8ba13ba Create "MnSubdivisionCode" rule 2015-09-21 13:27:23 -03:00
Henrique Moody 9b9cac8517 Create "MmSubdivisionCode" rule 2015-09-21 13:27:23 -03:00
Henrique Moody 083e2ff9c1 Create "MlSubdivisionCode" rule 2015-09-21 13:27:22 -03:00
Henrique Moody d56dd7329e Create "MkSubdivisionCode" rule 2015-09-21 13:27:22 -03:00
Henrique Moody bf43702607 Create "MhSubdivisionCode" rule 2015-09-21 13:27:22 -03:00
Henrique Moody a24b3aabec Create "MgSubdivisionCode" rule 2015-09-21 13:27:20 -03:00
Henrique Moody a0fd11d52e Create "MfSubdivisionCode" rule 2015-09-21 13:27:20 -03:00
Henrique Moody 0e79772b5b Create "MeSubdivisionCode" rule 2015-09-21 13:27:20 -03:00
Henrique Moody df9b2f23a1 Create "MdSubdivisionCode" rule 2015-09-21 13:27:19 -03:00
Henrique Moody ebd58653ad Create "McSubdivisionCode" rule 2015-09-21 13:27:19 -03:00
Henrique Moody 140021afdc Create "MaSubdivisionCode" rule 2015-09-21 13:27:18 -03:00
Henrique Moody 48fcdbdb54 Create "LySubdivisionCode" rule 2015-09-21 13:27:18 -03:00
Henrique Moody a1e8940f3f Create "LvSubdivisionCode" rule 2015-09-21 13:27:18 -03:00
Henrique Moody 56158891ea Create "LuSubdivisionCode" rule 2015-09-21 13:27:17 -03:00
Henrique Moody ced5b368cb Create "LtSubdivisionCode" rule 2015-09-21 13:27:17 -03:00
Henrique Moody 8dc0368c24 Create "LsSubdivisionCode" rule 2015-09-21 13:27:16 -03:00
Henrique Moody cf09e35fc2 Create "LrSubdivisionCode" rule 2015-09-21 13:27:16 -03:00
Henrique Moody db2ff06624 Create "LkSubdivisionCode" rule 2015-09-21 13:27:15 -03:00
Henrique Moody 3ad9386c9e Create "LiSubdivisionCode" rule 2015-09-21 13:27:15 -03:00
Henrique Moody 2ba753f106 Create "LcSubdivisionCode" rule 2015-09-21 13:27:14 -03:00
Henrique Moody 57a7990011 Create "LbSubdivisionCode" rule 2015-09-21 13:27:14 -03:00
Henrique Moody ea96dc675a Create "LaSubdivisionCode" rule 2015-09-21 13:27:14 -03:00
Henrique Moody 04d7404fb0 Create "KzSubdivisionCode" rule 2015-09-21 13:27:13 -03:00
Henrique Moody 12ab13b7c3 Create "KySubdivisionCode" rule 2015-09-21 13:27:13 -03:00
Henrique Moody d3751c2c96 Create "KwSubdivisionCode" rule 2015-09-21 13:27:13 -03:00
Henrique Moody b42f0e8088 Create "KrSubdivisionCode" rule 2015-09-21 13:27:12 -03:00
Henrique Moody 14f116f6d1 Create "KpSubdivisionCode" rule 2015-09-21 13:27:12 -03:00
Henrique Moody 992d8ca777 Create "KnSubdivisionCode" rule 2015-09-21 13:27:12 -03:00
Henrique Moody ab8152aa5b Create "KmSubdivisionCode" rule 2015-09-21 13:27:12 -03:00
Henrique Moody d11c10bbdd Create "KiSubdivisionCode" rule 2015-09-21 13:27:11 -03:00
Henrique Moody a0698cf8a1 Create "KhSubdivisionCode" rule 2015-09-21 13:27:11 -03:00
Henrique Moody 07584024b5 Create "KgSubdivisionCode" rule 2015-09-21 13:27:11 -03:00
Henrique Moody aaf5edd277 Create "KeSubdivisionCode" rule 2015-09-21 13:27:11 -03:00
Henrique Moody fc5b003028 Create "JpSubdivisionCode" rule 2015-09-21 13:27:10 -03:00
Henrique Moody dbded80a5f Create "JoSubdivisionCode" rule 2015-09-21 13:27:10 -03:00
Henrique Moody 2949c35029 Create "JmSubdivisionCode" rule 2015-09-21 13:27:09 -03:00
Henrique Moody 5adcbaeff8 Create "JeSubdivisionCode" rule 2015-09-21 13:27:09 -03:00
Henrique Moody 4579d0e415 Create "ItSubdivisionCode" rule 2015-09-21 13:27:08 -03:00