2018-10-13 12:16:26 +02:00
|
|
|
<?php
|
|
|
|
|
2018-10-25 16:57:39 +02:00
|
|
|
use Helper\Common\RowHelper;
|
2018-10-20 10:12:23 +02:00
|
|
|
|
2018-10-13 12:16:26 +02:00
|
|
|
class FattureCest
|
|
|
|
{
|
2018-10-20 10:12:23 +02:00
|
|
|
/**
|
|
|
|
* @var Helper\SignUp
|
|
|
|
*/
|
|
|
|
protected $rowHelper;
|
|
|
|
|
|
|
|
protected function _inject(RowHelper $rowHelper)
|
|
|
|
{
|
|
|
|
$this->rowHelper = $rowHelper;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function _before(\AcceptanceTester $t)
|
|
|
|
{
|
|
|
|
// Effettua l'accesso con le credenziali fornite
|
|
|
|
$t->login('admin', 'admin');
|
|
|
|
}
|
|
|
|
|
2018-10-13 12:16:26 +02:00
|
|
|
/**
|
2018-11-22 15:34:44 +01:00
|
|
|
* Crea una nuova fattura.
|
2018-10-13 12:16:26 +02:00
|
|
|
*
|
|
|
|
* @param AcceptanceTester $t
|
|
|
|
*/
|
|
|
|
protected function addFattura(AcceptanceTester $t, $entrata, $tipo, $anagrafica)
|
|
|
|
{
|
|
|
|
// Seleziona il modulo da aprire
|
|
|
|
$t->expandSidebarLink($entrata == true ? 'Vendite' : 'Acquisti');
|
|
|
|
$t->navigateTo($entrata == true ? 'Fatture di vendita' : 'Fatture di acquisto');
|
|
|
|
|
|
|
|
// Apre la schermata di nuovo elemento
|
|
|
|
$t->clickAndWaitModal('.btn-primary', '#tabs');
|
|
|
|
|
|
|
|
// Completa i campi per il nuovo elemento
|
|
|
|
$t->select2ajax('#idanagrafica_add', $anagrafica);
|
|
|
|
$t->select2('#idtipodocumento', $tipo);
|
|
|
|
|
|
|
|
// Effettua il submit
|
|
|
|
$t->clickAndWait('Aggiungi', '#add-form');
|
|
|
|
|
|
|
|
// Controlla il salvataggio finale
|
2018-11-22 15:34:44 +01:00
|
|
|
$t->see('Aggiunta fattura');
|
2018-10-13 12:16:26 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2018-11-22 15:34:44 +01:00
|
|
|
* Crea una nuova fattura e la elimina.
|
2018-10-13 12:16:26 +02:00
|
|
|
*
|
|
|
|
* @param AcceptanceTester $t
|
|
|
|
*/
|
|
|
|
protected function addAndDeleteFattura(AcceptanceTester $t, $cliente = 2, $tipo)
|
|
|
|
{
|
|
|
|
$this->addAnag($t, $cliente, $tipo);
|
|
|
|
|
|
|
|
// Seleziona l'azione di eliminazione
|
|
|
|
$t->clickAndWaitSwal('Elimina', '#tab_0');
|
|
|
|
|
|
|
|
// Conferma l'eliminazione
|
|
|
|
$t->clickSwalButton('Elimina');
|
|
|
|
|
|
|
|
// Controlla eliminazione
|
2018-11-22 15:34:44 +01:00
|
|
|
$t->see('Fattura eliminata!', '.alert-success');
|
2018-10-13 12:16:26 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2018-10-25 16:57:39 +02:00
|
|
|
* Crea una nuova fattura di vendita.
|
|
|
|
*
|
|
|
|
* @param AcceptanceTester $t
|
|
|
|
*/
|
2018-10-13 12:16:26 +02:00
|
|
|
public function testFatturaDiVendita(AcceptanceTester $t)
|
|
|
|
{
|
|
|
|
$this->addFattura($t, true, 2, 2);
|
|
|
|
|
2018-10-20 10:12:23 +02:00
|
|
|
$this->rowHelper->testImporti($t);
|
2018-10-13 12:16:26 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2018-10-25 16:57:39 +02:00
|
|
|
* Crea una nuova fattura di acquisto.
|
|
|
|
*
|
|
|
|
* @param AcceptanceTester $t
|
|
|
|
*/
|
2018-10-13 12:16:26 +02:00
|
|
|
public function testFatturaDiAcquisto(AcceptanceTester $t)
|
|
|
|
{
|
2018-11-22 15:34:44 +01:00
|
|
|
$this->addFattura($t, false, 1, 4);
|
|
|
|
|
|
|
|
// Fix pagamento vuoto
|
|
|
|
$t->select2('#idpagamento', 109);
|
|
|
|
$t->clickAndWait('Salva');
|
2018-10-13 12:16:26 +02:00
|
|
|
|
2018-12-24 10:46:59 +01:00
|
|
|
$this->rowHelper->testImporti($t, 'uscita');
|
2018-10-13 12:16:26 +02:00
|
|
|
}
|
|
|
|
}
|