mirror of
https://github.com/pestphp/pest.git
synced 2026-03-06 07:47:22 +01:00
Forces higher order test callable expects to be closures.
This commit is contained in:
@ -4,6 +4,7 @@ declare(strict_types=1);
|
||||
|
||||
namespace Pest\Support;
|
||||
|
||||
use Closure;
|
||||
use Pest\Expectation;
|
||||
use Pest\PendingObjects\TestCall;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
@ -34,7 +35,7 @@ final class HigherOrderCallables
|
||||
*/
|
||||
public function expect($value)
|
||||
{
|
||||
return new Expectation(is_callable($value) ? Reflection::bindCallable($value) : $value);
|
||||
return new Expectation($value instanceof Closure ? Reflection::bindCallable($value) : $value);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@ -18,6 +18,9 @@ it('resolves expect callables correctly')
|
||||
->toBeString()
|
||||
->toBe('bar');
|
||||
|
||||
test('does not treat method names as callables')
|
||||
->expect('it')->toBeString();
|
||||
|
||||
it('can tap into the test')
|
||||
->expect('foo')->toBeString()
|
||||
->tap(function () { expect($this)->toBeInstanceOf(TestCase::class); })
|
||||
|
||||
Reference in New Issue
Block a user