mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-06-05 22:09:38 +02:00
Miglioramento tests
This commit is contained in:
@@ -10,25 +10,22 @@ class RowHelper extends \Codeception\Module
|
||||
protected $finalPattern = "//div[@class='panel-heading' and contains(string(), 'Righe')]/parent::*//table//tr[contains(string(), '|name|')]//td[2]";
|
||||
|
||||
/**
|
||||
* Undocumented function.
|
||||
* Completa le informazioni per la creazione di un nuovo elemento.
|
||||
*
|
||||
* @param AcceptanceTester $t
|
||||
* @param [type] $descrizione
|
||||
* @param [type] $qta
|
||||
* @param [type] $prezzo
|
||||
* @param int $sconto
|
||||
* @param string $tipo_sconto
|
||||
* @param [type] $id_iva
|
||||
* @param [type] $id_rivalsa_inps
|
||||
* @param [type] $id_ritenuta_acconto
|
||||
* @param [type] $descrizione
|
||||
* @param [type] $qta
|
||||
* @param [type] $prezzo
|
||||
* @param integer $sconto
|
||||
* @param string $tipo_sconto
|
||||
* @param [type] $id_iva
|
||||
* @param [type] $id_rivalsa_inps
|
||||
* @param [type] $id_ritenuta_acconto
|
||||
* @return void
|
||||
*/
|
||||
public function addRow(AcceptanceTester $t, $descrizione, $qta, $prezzo, $sconto = 0, $tipo_sconto = 'UNT', $id_iva = null, $id_rivalsa_inps = null, $id_ritenuta_acconto = null)
|
||||
protected function fill(AcceptanceTester $t, $descrizione, $qta, $prezzo, $sconto = 0, $tipo_sconto = 'UNT', $id_iva = null, $id_rivalsa_inps = null, $id_ritenuta_acconto = null)
|
||||
{
|
||||
// Apre il modal
|
||||
$t->clickAndWaitModal('Riga', '#tab_0');
|
||||
|
||||
// Completa le informazioni
|
||||
$t->fillField('Descrizione', $descrizione);
|
||||
$t->fillField('#descrizione_riga', $descrizione);
|
||||
$t->fillField('Q.tà', $qta);
|
||||
$t->fillField('Costo unitario', $prezzo);
|
||||
|
||||
@@ -50,6 +47,27 @@ class RowHelper extends \Codeception\Module
|
||||
if ($id_ritenuta_acconto) {
|
||||
$t->select2('#id_ritenuta_acconto', $id_ritenuta_acconto);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Aggiunge una nuova riga.
|
||||
*
|
||||
* @param AcceptanceTester $t
|
||||
* @param string $descrizione
|
||||
* @param int $qta
|
||||
* @param float $prezzo
|
||||
* @param int $sconto
|
||||
* @param string $tipo_sconto
|
||||
* @param int $id_iva
|
||||
* @param int $id_rivalsa_inps
|
||||
* @param int $id_ritenuta_acconto
|
||||
*/
|
||||
public function addRow(AcceptanceTester $t, $descrizione, $qta, $prezzo, $sconto = 0, $tipo_sconto = 'UNT', $id_iva = null, $id_rivalsa_inps = null, $id_ritenuta_acconto = null)
|
||||
{
|
||||
// Apre il modal
|
||||
$t->clickAndWaitModal('Riga', '#tab_0');
|
||||
|
||||
$this->fill($t, $descrizione, $qta, $prezzo, $sconto, $tipo_sconto, $id_iva, $id_rivalsa_inps, $id_ritenuta_acconto);
|
||||
|
||||
// Effettua il submit
|
||||
$t->clickAndWait('Aggiungi', '.modal');
|
||||
@@ -58,6 +76,34 @@ class RowHelper extends \Codeception\Module
|
||||
$t->see('Riga aggiunta');
|
||||
}
|
||||
|
||||
/**
|
||||
* Aggiunge un nuovo articolo.
|
||||
*
|
||||
* @param AcceptanceTester $t
|
||||
* @param string $descrizione
|
||||
* @param int $qta
|
||||
* @param float $prezzo
|
||||
* @param int $sconto
|
||||
* @param string $tipo_sconto
|
||||
* @param int $id_iva
|
||||
* @param int $id_rivalsa_inps
|
||||
* @param int $id_ritenuta_acconto
|
||||
*/
|
||||
public function addArticle(AcceptanceTester $t, $id_articolo, $descrizione, $qta, $prezzo, $sconto = 0, $tipo_sconto = 'UNT', $id_iva = null, $id_rivalsa_inps = null, $id_ritenuta_acconto = null)
|
||||
{
|
||||
// Apre il modal
|
||||
$t->clickAndWaitModal('Articolo', '#tab_0');
|
||||
|
||||
$t->select2ajax('#idarticolo', $id_articolo);
|
||||
$this->fill($t, $descrizione, $qta, $prezzo, $sconto, $tipo_sconto, $id_iva, $id_rivalsa_inps, $id_ritenuta_acconto);
|
||||
|
||||
// Effettua il submit
|
||||
$t->clickAndWait('Aggiungi', '.modal');
|
||||
|
||||
// Controlla il salvataggio finale
|
||||
$t->see('Articolo aggiunto');
|
||||
}
|
||||
|
||||
/**
|
||||
* Undocumented function.
|
||||
*
|
||||
@@ -85,6 +131,7 @@ class RowHelper extends \Codeception\Module
|
||||
*/
|
||||
public function testImporti(AcceptanceTester $t)
|
||||
{
|
||||
// Righe di test (issue #98)
|
||||
$this->addRow($t, 'Riga 1', 1, 34);
|
||||
$this->addRow($t, 'Riga 2', 1, 17.44);
|
||||
$this->addRow($t, 'Riga 3', 48, 0.52);
|
||||
@@ -96,6 +143,7 @@ class RowHelper extends \Codeception\Module
|
||||
$t->see('46,71', $this->getFinalValue('IVA'));
|
||||
$t->see('259,05', $this->getFinalValue('Totale'));
|
||||
|
||||
// Righe di controllo sugli sconti
|
||||
$this->addRow($t, 'Riga 7 con sconto in euro', 15, 12, 2);
|
||||
$this->addRow($t, 'Riga 8 con sconto percentuale', 15, 10, 20, 'PRC');
|
||||
|
||||
@@ -104,5 +152,27 @@ class RowHelper extends \Codeception\Module
|
||||
$t->see('482,34', $this->getFinalValue('Imponibile scontato'));
|
||||
$t->see('106,11', $this->getFinalValue('IVA'));
|
||||
$t->see('588,45', $this->getFinalValue('Totale'));
|
||||
|
||||
// Sconto globale in euro
|
||||
$t->fillField('Sconto incondizionato', 100);
|
||||
$t->select2ajax('#tipo_sconto_generico', 'UNT');
|
||||
$t->clickAndWait('Salva');
|
||||
|
||||
$t->see('442,34', $this->getFinalValue('Imponibile'));
|
||||
$t->see('60,00', $this->getFinalValue('Sconto'));
|
||||
$t->see('382,34', $this->getFinalValue('Imponibile scontato'));
|
||||
$t->see('84,11', $this->getFinalValue('IVA'));
|
||||
$t->see('466,45', $this->getFinalValue('Totale'));
|
||||
|
||||
// Sconto globale in percentuale
|
||||
$t->fillField('Sconto incondizionato', 10);
|
||||
$t->select2ajax('#tipo_sconto_generico', 'PRC');
|
||||
$t->clickAndWait('Salva');
|
||||
|
||||
$t->see('494,11', $this->getFinalValue('Imponibile'));
|
||||
$t->see('60,00', $this->getFinalValue('Sconto'));
|
||||
$t->see('434,11', $this->getFinalValue('Imponibile scontato'));
|
||||
$t->see('95,50', $this->getFinalValue('IVA'));
|
||||
$t->see('529,61', $this->getFinalValue('Totale'));
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user