Add Sniff to ensure usage of Stringable interface #172
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Introduces a new Sniff that will flag when a class that defines the
__toStringmagic method doesn't implement theStringableinterface.This Sniff includes a fixer.
Testing Steps
Install this PR branch:
Create a file called
class-my-class.php:Run PHPCS:
If on PHP > 8.0:
Amongst the errors should be one labelled
BigBite.Classes.Stringable, which should inform you that the class should implement theStringableinterface.If on PHP < 8.0:
There should not be an error labelled
BigBite.Classes.Stringableamongst the list of errors, since theStringableinterface was only introduced in PHP 8.0.Types of changes (if applicable):
Checklist (if applicable):
composer run all-checks.