aeris / spy
Test spies
Installs: 3 932
Dependents: 2
Suggesters: 0
Security: 0
Stars: 0
Watchers: 12
Forks: 0
Open Issues: 0
Requires
- mockery/mockery: ^0.9.4
This package is not auto-updated.
Last update: 2024-11-13 10:12:44 UTC
README
Test spies for PHP.
Install
composer require aeris/spy
Overview
An Aeris\Spy
allows you to mock callable
s in PHP. A Spy
wraps around a Mockery\
object, which means that you can use Mockery expectations with your Aeris Spies.
For example:
$spy = new Spy(); $spy(5); $spy(6); $spy(7); $spy->shouldHaveBeenCalled() ->twice() ->with(\Mockery::on(function($arg) { return $arg > 5; )))
API
shouldHaveBeenCalled()
/ shouldNotHaveBeenCalled()
$spy = new Spy(); $spy(); $spy->shouldHaveBeenCalled(); // Passes (no exception) $spy->shouldNotHaveBeenCalled(); // Failed (throws \Mockery\Exception\InvalidCountException)
andReturn($val)
$spy = new Spy(); $spy->andReturn('foo'); $spy(); // 'foo'
andReturnUsing
$spy = new Spy() $spy->andReturnUsing(function($str) { strtoupper($str); }); $spy('foo'); // 'FOO'
Spy::returns($val);
Creates a spy which returns a value. Short-hand for creating a spy, then calling andReturn
.
$spy = Spy::returns('foo'); $spy(); // 'foo'
Spy::returnsUsing($callable);
Creates a spy which returns a value via a callable. Short-hand for creating a spy, then calling andReturnUsing
.
$spy = Spy::returnsUsing(function($str) { strtoupper($str); }); $spy('foo'); // 'FOO'