Pregunta

$client = Mockery::mock();
$client->shouldReceive('send')->andThrow($error)->andReturn(true);

Unfortunately it only returns true but not throw the exception first. How do I throw an exception on first call then return value on second call of the method?

EDIT:

This works if I manually edit Mockery\Expectation.php and set $_throw = true.

$client->shouldReceive('send')->twice()->andReturn($error, true);
¿Fue útil?

Solución

$client->shouldReceive('send')->once()->andThrow($error);
$client->shouldReceive('send')->once()->andReturn(true);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top