Sto usando il test PHPUnit per duplicare modelli, librerie, ecc. Ma quando voglio restituire un array, forse, di oggetti contenitore, il modo migliore per farlo. Ecco cosa sto facendo attualmente:
/**
* This is just a mock of the response from http client
*/
class Container {
public $values;
public function __construct($values) {
$this->values = $values;
}
public function __get($name) {
return (isset($values[$name])) ? $values[$name] : null;
}
public function __set($name, $value) {
$values[$name] = $value;
}
}
.. quindi nei miei metodi di prova * posso fare qualcosa del tipo:
$userMock = new Container(array('id' => 2, 'name'=>'Tom'));
$this->mock
->method('find') // called within BaseController
->with(2)
->willReturn( $userMock );
Quindi non so se posso usare PHPUnit tets double o Mockery per creare tali classi, posso? Sembra più semplice fare solo così, è comunque un buon approccio?