Miglioramento base dei tests

This commit is contained in:
Thomas Zilio 2018-08-04 09:40:03 +02:00
parent 5c84399b70
commit e3a32b74cd
2 changed files with 68 additions and 3 deletions

View File

@ -17,12 +17,20 @@ class Acceptance extends \Codeception\Module
{
$t = $this->getAcceptanceModule();
if ($t->loadSessionSnapshot('login')) {
return;
}
$t->amOnPage('/');
$t->fillField('username', $username);
$t->fillField('password', $password);
$this->clickAndWait('Accedi');
$t->see($username, '.user-panel');
$t->saveSessionSnapshot('login');
}
/**
@ -55,6 +63,45 @@ class Acceptance extends \Codeception\Module
$t->waitForElementVisible('.modal');
}
/**
* Clicca sul pulsante dentro il modal.
*
* @param $link
*/
public function clickModalButton($link)
{
$t = $this->getAcceptanceModule();
$this->clickAndWait($link, '.modal-content');
}
/**
* Clicca sul pulsante e attende la conclusione del caricamento del modal SWAL.
*
* @param $link
* @param $context
*/
public function clickAndWaitSwal($link, $context = null)
{
$t = $this->getAcceptanceModule();
$this->clickAndWait($link, $context);
$t->waitForElementVisible('.swal2-modal');
}
/**
* Clicca sul pulsante dentro il modal SWAL.
*
* @param $link
*/
public function clickSwalButton($link)
{
$t = $this->getAcceptanceModule();
$this->clickAndWait($link, '.swal2-buttonswrapper');
}
/**
* Imposta il valore di un select gestito dal framework Select2.
*

View File

@ -7,7 +7,7 @@ class AnagraficheCest
*
* @param AcceptanceTester $t
*/
public function addWorks(AcceptanceTester $t)
public function addWorks(AcceptanceTester $t, $name = 'TEST', $tipo = 1)
{
// Effettua l'accesso con le credenziali fornite
$t->login('admin', 'admin');
@ -19,8 +19,8 @@ class AnagraficheCest
$t->clickAndWaitModal('.btn-primary', '#tabs');
// Completa i campi per il nuovo elemento
$t->fillField('Ragione sociale', 'TEST');
$t->select2('#idtipoanagrafica', '1');
$t->fillField('Ragione sociale', $name);
$t->select2('#idtipoanagrafica', $tipo);
// Effettua il submit
$t->clickAndWait('Aggiungi', '#add-form');
@ -28,4 +28,22 @@ class AnagraficheCest
// Controlla il salvataggio finale
$t->see('Dati anagrafici');
}
/**
* Crea una nuova anagrafica di tipo Cliente.
*
* @param AcceptanceTester $t
*/
public function addAndDeleteWorks(AcceptanceTester $t)
{
$this->addWorks($t, 'TEST DELETE');
// Seleziona l'azione di eliminazione
$t->clickAndWaitSwal('Elimina', '#tab_0');
// Conferma l'eliminazione
$t->clickSwalButton('Elimina');
$t->see('Anagrafica eliminata!');
}
}