Voglio prendere in giro un metodo nella stessa classe che sto testando.Mock un metodo nella stessa classe in fase di test
ClassA {
function hardToTest($arg) {
// difficult to test code
}
function underTest() {
return $this->hardToTest('foo');
}
}
stavo pensando che potrei usare riflessione per fare questo, ma forse è solo un segno che dovrei spostare hardToTest
in un altro oggetto.
sto utilizzando PHPUnit 5.7, e avevo bisogno di usare 'createPartialMock' e specificare quali metodi devono essere deriso. – Ryan
Concordo sul fatto che dover prendere in giro un metodo nella stessa classe in fase di test è l'odore del codice e che il metodo dovrebbe essere spostato in un'altra classe. –