[9.x] Fix ExcludeIf regression to use Closure over is_callable() #41969
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.
This fixes a regression introduced by #41931. In the original test, the string
phpinfo
was being pass into the constructor. After the rewrite, this check was changed tofoobar
.Why this matters is that
is_callable('phpinfo')
will evaluate toTRUE
as it is a function in the global namespace. This switches the check fromis_callable($condition)
to the more strict$condition instanceof Closure
and updates the test to check the stringphpinfo
once again.