Closed pherrymason closed 6 years ago
Gracias por darte el trabajo de hacer limpia en el código, este fin de semana que tengo libre realizo las pruebas y merge. Tanto tiempo con el setEnviroment mal escrito, eso me di cuenta ayer con otra clase.
No problem! Tengo pensado añadir Unit Test tambien, pero para ello quizà haga falta un refactor mas profundo, si estás de acuerdo puedo echarle un vistazo.
Lo que veo que al verificar la tarjeta solo comparas si esta vacio
if ($this->isEmpty($expirydate) != 4) {
throw new TpvException('Expire date is not valid');
}
Siempre va saltar esta excepción (true != 4 ) (false !=4)
Lo de las pruebas siempre me han apetecido el agregarlas pero siempre los he dejado, si quieres se puede ver y agregar, lo único ver que no se rompa nada claro esta.
Cierto, ahi no se debe usar isEmpty
, bien visto.
Ya, ayer me puse a verlo por encima todo.
Acabo de ver este método y el valor tiene que ser mayor a 0 sino da error, acabo de cambiarlo por <=0 y el texto.
public function setAmount($amount)
{
if ($amount <= 0) {
throw new TpvException('Amount must be greater than equal 0.');
}
$amount = $this->convertNumber($amount);
$amount = intval(strval($amount * 100));
$this->_setParameters['DS_MERCHANT_AMOUNT'] = $amount;
}
Al final no me percate que tenemos pago con referencia:
Para este primer pago, se podrá enviar una operación de importe 0 euros, que se llevará a cabo como cualquier otra operación de importe superior.
Así que nada, se deja como estaba.
Ok.
Para mejor seguimiento, puedes comentar directamente en el código, en la pestaña Files Changed
;)
This PR makes some minor fixes like: