-
-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Image
validation rule
#670
Conversation
vjik
commented
Mar 23, 2024
Q | A |
---|---|
Is bugfix? | ❌ |
New feature? | ✔️ |
Breaks BC? | ❌ |
Fixed issues |
PR Summary
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## 1.x #670 +/- ##
======================================
Coverage ? 94.94%
Complexity ? 835
======================================
Files ? 96
Lines ? 2553
Branches ? 0
======================================
Hits ? 2424
Misses ? 129
Partials ? 0 ☔ View full report in Codecov by Sentry. |
src/Rule/Image.php
Outdated
private ?int $maxWidth = null, | ||
private ?int $maxHeight = null, | ||
private string $notImageMessage = 'The value must be an image.', | ||
private string $notExactlyWidthMessage = 'The width of image "{attribute}" must be exactly {exactly, number} {exactly, plural, one{pixel} other{pixels}}.', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Validating aspect ratio is quite a popular case too. Can be added iteratively in a separate PR.
Docs related additions - #671. |
Co-authored-by: Alexander Makarov <[email protected]>
Co-authored-by: Alexander Makarov <[email protected]>
* update irc link (#663) * update docs folder link (#666) * Add methods `addErrorWithFormatOnly()` and `addErrorWithoutPostProcessing()` to `Result` object (#665) * Clarify psalm types in `Result` (#668) * Update result docs (#676) * Add `Image` validation rule (#670) Co-authored-by: Alexey Rogachev <[email protected]> Co-authored-by: Alexander Makarov <[email protected]> * Add missed params to `Image` rule options (#680) * Add date rules (#678) Co-authored-by: Alexander Makarov <[email protected]> * Add aspect ratio support to `Image` rule (#681) * Add aspect ratio support to `Image` rule * Apply fixes from StyleCI * Code coverage, mutants * Add detailed test cases' descriptions in data providers * Change placeholders * Work with options * Work with options 2 * More configuration checks * Fix logic, add PHPDoc * Use value object for aspect ratio * Actualize fix for mutant for absolute margin * Fix error messages * Fix new mutants * Update src/Rule/Image/ImageAspectRatio.php Co-authored-by: Sergei Predvoditelev <[email protected]> * Do not use dedicated container in tests, fix last mutant --------- Co-authored-by: StyleCI Bot <[email protected]> Co-authored-by: Sergei Predvoditelev <[email protected]> * Release version 1.3.0 * Prepare for next release * Update guides in english and Translate guides into Brazilian Portuguese (#691) * Add `Result::add()` method for merging other results to the base one (#686) * Add `Result::add()` method for merging other results to the base one * Apply fixes from StyleCI * Update PR template [skip ci] * Update src/Result.php Co-authored-by: Alexander Makarov <[email protected]> --------- Co-authored-by: StyleCI Bot <[email protected]> Co-authored-by: Alexander Makarov <[email protected]> * Add type rules and `Any` rule (#692) * Add type rules and handlers * Apply fixes from StyleCI * Mention in the docs + basic tests * Apply fixes from StyleCI * Fix copy paste [skip ci] * Test error message * Update changelog [skip ci] * Update PHPDoc [skip ci] * More tests and descriptions * Apply fixes from StyleCI * Include type in error message * Add Any rule * Apply fixes from StyleCI * Update changelog [skip ci] * Note [skip ci] * Add translations [skip ci] * Fix tests * Test attributes * Extract PHP >= 8.1 specific tests * Apply fixes from StyleCI * Extract PHP >= 8.1 specific tests 2 * Fix mutant * Update CHANGELOG.md Co-authored-by: Sergei Predvoditelev <[email protected]> * Rename Any to AnyRule (review) --------- Co-authored-by: StyleCI Bot <[email protected]> Co-authored-by: Sergei Predvoditelev <[email protected]> * Rename `Any` rule in docs (#699) * Rename AnyHandler (remaining occurence) (#701) * Add methods for getting first error messages to `Result` (#697) * Add methods for getting first error messages to `Result` * Bump coverage * Update src/Result.php Co-authored-by: Sergei Predvoditelev <[email protected]> * Update src/Result.php Co-authored-by: Sergei Predvoditelev <[email protected]> * Apply fixes from StyleCI * Remove newline [skip ci] * Add changelog entry [skip ci] --------- Co-authored-by: Sergei Predvoditelev <[email protected]> Co-authored-by: StyleCI Bot <[email protected]> * Translate Each rule docs into Russian (#688) * Add `Unique` rule (#695) * Add Unique rule * Apply fixes from StyleCI * More tests, messages [WIP] * Apply fixes from StyleCI * Test traslated attributes * Test using as attribute * Ready for review * Apply fixes from StyleCI * Update src/Rule/UniqueHandler.php Co-authored-by: Dmitriy Derepko <[email protected]> * Apply fixes from StyleCI * Slightly different approach * Apply fixes from StyleCI * New test case to check strict equality * Different approach * Minor adjustments * Remove comma, rename * Update changelog [skip ci] --------- Co-authored-by: StyleCI Bot <[email protected]> Co-authored-by: Dmitriy Derepko <[email protected]> Co-authored-by: Sergei Predvoditelev <[email protected]> * Fix typo in array shape (#705) * Fix docs, translate brazilian portuguese (#708) Co-authored-by: Sergei Predvoditelev <[email protected]> * Release version 1.4.0 * Prepare for next release * Merge fixes --------- Co-authored-by: Ihor Sychevskyi <[email protected]> Co-authored-by: Alexey Rogachev <[email protected]> Co-authored-by: Alexander Makarov <[email protected]> Co-authored-by: StyleCI Bot <[email protected]> Co-authored-by: Luiz Marin <[email protected]> Co-authored-by: Danil Arduanov <[email protected]> Co-authored-by: Dmitriy Derepko <[email protected]>