Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Increase CanValidateDateTimeTest invalid data test coverage
This change is to ensure `Respect\Validation` is intentional about the DateTime formats. For context the [ISO 8601][] standard says that we shouldn't accept `-00:00` (or anything similar) offsets. I noticed that there was an a [change][] in how `CanValidateDateTime.php` behaved from v2.2 to v2.3. Prior to v2.3 date time formats of `2018-01-30T19:04:35-00:00` (note the -00:00) would pass validation. After updating to v2.3 the format is not accepted. This is because the `DateTime::createFromFormat` accepts the `$value` of `2018-01-30T19:04:35-00:00` but internally converts the `-00:00` to `+00:00` ``` $formattedDate = DateTime::createFromFormat( $format, $value, new DateTimeZone(date_default_timezone_get()) ); ``` This in turn causes the validation around `$value !== $formattedDate->format($format))` to fail ``` if ($formattedDate === false || $value !== $formattedDate->format($format)) { return false; } ``` [ISO 8601]: https://en.wikipedia.org/wiki/ISO_8601#Other_time_offset_specifications [change]: 5fe4b96
- Loading branch information