diff --git a/tests/_data/.gitkeep b/tests/_data/.gitkeep deleted file mode 100755 index e69de29bb..000000000 diff --git a/tests/_output/.gitignore b/tests/_output/.gitignore deleted file mode 100755 index c96a04f00..000000000 --- a/tests/_output/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore \ No newline at end of file diff --git a/tests/_support/AcceptanceTester.php b/tests/_support/AcceptanceTester.php deleted file mode 100755 index 173de9ed6..000000000 --- a/tests/_support/AcceptanceTester.php +++ /dev/null @@ -1,110 +0,0 @@ -retryClick($link, $context); - - $t->waitForElementNotVisible('#main_loading'); - $t->waitForElementNotVisible('#mini-loader'); - } - - /** - * Clicca sul pulsante e attende la conclusione del caricamento del modal. - * - * @param $link - * @param $context - */ - public function clickAndWaitModal($link, $context = null) - { - $t = $this; - - $t->clickAndWait($link, $context); - - $t->waitForElementVisible('.modal'); - $t->wait(1); - } - - /** - * Clicca sul pulsante dentro il modal. - * - * @param $link - */ - public function clickModalButton($link) - { - $t = $this; - - $t->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; - - $t->clickAndWait($link, $context); - - $t->waitForElementVisible('.swal2-modal'); - } - - /** - * Clicca sul pulsante dentro il modal SWAL. - * - * @param $link - */ - public function clickSwalButton($link) - { - $t = $this; - - $t->clickAndWait($link, '.swal2-buttonswrapper'); - } - - public function navigateTo($link) - { - $this->wait(0.5); - - $this->clickAndWait($link, '.sidebar'); - } - - /** - * Effettua il login dalla pagina principale. - * - * @param string $username - * @param string $password - */ - public function login($username, $password) - { - $t = $this; - - // Operazioni di login - $t->amOnPage('/'); - - $t->fillField('username', $username); - $t->fillField('password', $password); - - $t->clickAndWait('Accedi'); - - // Controlla il completamento del login - $t->see($username, '.user-panel'); - - // Rimozione barra di debug - $t->executeJS('$(".phpdebugbar-close-btn").click()'); - } -} diff --git a/tests/_support/FunctionalTester.php b/tests/_support/FunctionalTester.php deleted file mode 100755 index e3a9dd03c..000000000 --- a/tests/_support/FunctionalTester.php +++ /dev/null @@ -1,26 +0,0 @@ -getModule('\Helper\Select2'); - - $select2->openSelect2($selector); - $select2->selectOptionForSelect2($selector, $option, $timeout); - $select2->closeSelect2($selector); - } - - /** - * Imposta il valore di un select gestito dal framework Select2. - * - * @param $selector - * @param $option - * @param int $timeout seconds. Default to 1 - */ - public function select2ajax($selector, $option, $timeout = null) - { - $select2 = $this->getModule('\Helper\Select2Ajax'); - $t = $this->getAcceptanceModule(); - - $select2->openSelect2($selector); - $t->wait(1); - $select2->selectByPosition($selector, $option, $timeout); - $select2->closeSelect2($selector); - } - - public function seePageHasElement($element) - { - try { - $this->getAcceptanceModule()->seeElement($element); - } catch (\Exception $f) { - return false; - } - - return true; - } - - public function expandSidebarLink($link) - { - $t = $this->getAcceptanceModule(); - - if (!$this->seePageHasElement("descendant-or-self::*[@class and contains(concat(' ', normalize-space(@class), ' '), ' sidebar ')]/descendant-or-self::*/li[contains(., '".$link."') and @class and contains(concat(' ', normalize-space(@class), ' '), ' menu-open ')]")) { - $t->click($link, '.sidebar'); - $t->wait(1); - } - } - - protected function getAcceptanceModule() - { - if (!$this->hasModule('WebDriver')) { - throw new \Exception('You must enable the WebDriver module', 1); - } - - return $this->getModule('WebDriver'); - } -} diff --git a/tests/_support/Helper/Common/RowHelper.php b/tests/_support/Helper/Common/RowHelper.php deleted file mode 100755 index b93a006f8..000000000 --- a/tests/_support/Helper/Common/RowHelper.php +++ /dev/null @@ -1,225 +0,0 @@ -wait(0.5); - - // Apre il modal - $t->clickAndWaitModal('Sconto/maggiorazione', '#tab_0'); - - $t->fillField('#descrizione_riga', $descrizione); - - if ($type == 'UNT') { - $t->fillField('#sconto_unitario', $value); - } else { - $t->fillField('#sconto_percentuale', $value); - } - - // Effettua il submit - $t->clickAndWait('Aggiungi', '.modal'); - - // Controlla il salvataggio finale - $t->see('Sconto/maggiorazione aggiunto'); - } - - /** - * Aggiunge una nuova riga. - * - * @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) - { - $t->wait(0.5); - - // 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'); - - // Controlla il salvataggio finale - $t->see('Riga aggiunta'); - } - - /** - * Aggiunge un nuovo articolo. - * - * @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) - { - $t->wait(0.5); - - // 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. - */ - public function testImporti(AcceptanceTester $t, $direzione = 'entrata') - { - $this->dir = $direzione; - - // 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); - $this->addRow($t, 'Riga 4', 66, 0.44); - $this->addRow($t, 'Riga 5', 1, 104.90); - $this->addRow($t, 'Riga 6', 1, 2); - - $t->see('212,34', $this->getFinalValue('Imponibile')); - $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'); - - $t->see('542,34', $this->getFinalValue('Imponibile')); - $t->see('60,00', $this->getFinalValue('Sconto')); - $t->see('482,34', $this->getFinalValue('Totale imponibile')); - $t->see('106,11', $this->getFinalValue('IVA')); - $t->see('588,45', $this->getFinalValue('Totale')); - - // Sconto globale in euro - $this->addDiscount($t, 'Sconto unitario', 100, 'UNT'); - - $t->see('542,34', $this->getFinalValue('Imponibile')); - $t->see('160,00', $this->getFinalValue('Sconto')); - $t->see('382,34', $this->getFinalValue('Totale imponibile')); - $t->see('84,11', $this->getFinalValue('IVA')); - $t->see('466,45', $this->getFinalValue('Totale')); - - // Sconto globale in percentuale - $this->addDiscount($t, null, 10, 'PRC'); - - $this->delete($t, 'Sconto unitario'); - - $t->see('542,34', $this->getFinalValue('Imponibile')); - $t->see('98,23', $this->getFinalValue('Sconto')); - $t->see('444,11', $this->getFinalValue('Totale imponibile')); - $t->see('97,70', $this->getFinalValue('IVA')); - $t->see('541,81', $this->getFinalValue('Totale')); - } - - /** - * Completa le informazioni per la creazione di un nuovo elemento. - * - * @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 - */ - protected function fill(AcceptanceTester $t, $descrizione, $qta, $prezzo, $sconto = 0, $tipo_sconto = 'UNT', $id_iva = null, $id_rivalsa_inps = null, $id_ritenuta_acconto = null) - { - $t->fillField('#descrizione_riga', $descrizione); - $t->fillField('#qta', $qta); - - $t->fillField('#prezzo_unitario', $prezzo); - - if (!empty($sconto)) { - $t->fillField('#sconto', $sconto); - - if (in_array($tipo_sconto, ['PRC', 'UNT'])) { - $t->select2ajax('#tipo_sconto', $tipo_sconto == 'PRC' ? 0 : 1); - } - } - - if ($id_iva) { - $t->select2('#idiva', $id_iva); - } - - if ($id_rivalsa_inps) { - $t->select2('#id_rivalsa_inps', $id_rivalsa_inps); - } - if ($id_ritenuta_acconto) { - $t->select2('#id_ritenuta_acconto', $id_ritenuta_acconto); - } - } - - protected function delete(AcceptanceTester $t, $descrizione) - { - $path = $this->getPattern($descrizione).'//td[last()]'; - - $t->wait(0.5); - $t->click('.btn-danger', $path); - $t->acceptPopup(); - - $t->waitForElementNotVisible('#main_loading'); - $t->waitForElementNotVisible('#mini-loader'); - - $t->see('Riga eliminata!'); - - //$t->click('#save', '#tab_0'); - } - - /** - * Undocumented function. - * - * @param string $pattern - */ - protected function setPattern($pattern) - { - $this->tablePattern = $pattern; - } - - protected function getPattern($name) - { - return str_replace('|name|', $name, $this->tablePattern); - } - - protected function getFinalValue($name) - { - $name = strtoupper($name); - - return $this->getPattern($name).'//td[2]'; - } -} diff --git a/tests/_support/Helper/Functional.php b/tests/_support/Helper/Functional.php deleted file mode 100755 index 57e511334..000000000 --- a/tests/_support/Helper/Functional.php +++ /dev/null @@ -1,10 +0,0 @@ - -// Author: Florian Krämer -// Author: Tom Walsh -// License: MIT -// -// Installation: -// * Put this file in your 'tests/_support/Helper' directory -// * Add it in your 'tests/acceptance.suite.yml' file, like this: -// class_name: AcceptanceTester -// modules: -// enabled: -// - WebDriver: -// url: 'http://localhost:8000' -// # ... -// - \Helper\Select2 -// -// * Then run ./vendor/bin/codecept build - -class Select2 extends \Codeception\Module -{ - /** - * Wait until the select2 component is loaded. - * - * @param $selector - * @param int $timeout seconds. Default to 5 - */ - public function waitForSelect2($selector, $timeout = 5) - { - $t = $this->getAcceptanceModule(); - $selector = $this->getSelect2Selector($selector); - $t->waitForJS('return !!jQuery("'.$selector.'").data("select2");', $timeout); - } - - /** - * Checks that the given option is not selected. - * - * @param $selector - * @param $optionText - * @param int $timeout seconds. Default to 5 - */ - public function dontSeeOptionIsSelectedForSelect2($selector, $optionText, $timeout = 5) - { - $t = $this->getAcceptanceModule(); - $selector = $this->getSelect2Selector($selector); - $this->waitForSelect2($selector, $timeout); - $script = $this->_optionIsSelectedForSelect2($selector, $optionText, false); - $t->waitForJS($script, $timeout); - } - - /** - * Checks that the given option is selected. - * - * @param $selector - * @param $optionText - * @param int $timeout seconds. Default to 5 - */ - public function seeOptionIsSelectedForSelect2($selector, $optionText, $timeout = 5) - { - $t = $this->getAcceptanceModule(); - $selector = $this->getSelect2Selector($selector); - $this->waitForSelect2($selector, $timeout); - $script = $this->_optionIsSelectedForSelect2($selector, $optionText); - $t->waitForJS($script, $timeout); - } - - /** - * Selects an option in a select2 component. - * - * $t->selectOptionForSelect2('#my_select2', 'Option value'); - * $t->selectOptionForSelect2('#my_select2', ['Option value 1', 'Option value 2']); - * $t->selectOptionForSelect2('#my_select2', ['text' => 'Option text']); - * $t->selectOptionForSelect2('#my_select2', ['id' => 'Option value', 'text' => 'Option text']); - * - * @param $selector - * @param $option - * @param int $timeout seconds. Default to 1 - */ - public function selectOptionForSelect2($selector, $option, $timeout = 5) - { - $t = $this->getAcceptanceModule(); - $selector = $this->getSelect2Selector($selector); - $this->waitForSelect2($selector, $timeout); - - if (is_int($option)) { - $option = (string) $option; - } - - if (is_string($option) || (is_array($option) && array_values($option) === $option)) { - $t->executeJS('jQuery("'.$selector.'").select2("val", '.json_encode($option).');', [$timeout]); - $t->executeJS('jQuery("'.$selector.'").trigger("select2:select").trigger("change");', [$timeout]); - } elseif (is_array($option)) { - $optionId = 'null'; - if (isset($option['text']) && empty($option['id'])) { - $optionText = $option['text']; - $optionId = <<executeJS($script, [$timeout]); - } else { - $t->fail(); - } - } - - /** - * Unselect an option in the given select2 component. - * - * @param $selector - * @param $option - * @param int $timeout seconds. Default to 1 - */ - public function unselectOptionForSelect2($selector, $option = null, $timeout = 1) - { - $t = $this->getAcceptanceModule(); - $selector = $this->getSelect2Selector($selector); - $this->waitForSelect2($selector, $timeout); - if ($option && is_string($option)) { - $script = << -1) { - values.splice(index, 1); - } - \$("$selector").select2("val", values); - \$(\$("$selector").trigger("select2:select").trigger("change"); -}(jQuery)); -EOT; - $t->executeJS($script, [$timeout]); - } else { - $t->executeJS('jQuery("'.$selector.'").select2("val", "");', [$timeout]); - $t->executeJS('jQuery("'.$selector.'").trigger("select2:select").trigger("change");', [$timeout]); - } - } - - /** - * Open the Select2 component. - * - * @param string $selector - */ - public function openSelect2($selector) - { - $t = $this->getAcceptanceModule(); - $selector = $this->getSelect2Selector($selector); - $this->waitForSelect2($selector); - $t->executeJS('jQuery("'.$selector.'").select2("open");'); - } - - /** - * Close the Select2 component. - * - * @param string $selector - */ - public function closeSelect2($selector) - { - $t = $this->getAcceptanceModule(); - $selector = $this->getSelect2Selector($selector); - $this->waitForSelect2($selector); - $t->executeJS('jQuery("'.$selector.'").select2("close");'); - } - - /** - * @param $selector - * @param $optionText - * @param bool $expectedReturn Default to true - * - * @return string JavaScript - */ - protected function _optionIsSelectedForSelect2($selector, $optionText, $expectedReturn = true) - { - $returnFlag = $expectedReturn === true ? '' : '!'; - - return $script = << 0) { - isSelected = values.some(function (data) { - if (data && data.text && data.text === "$optionText") { - return data; - } - }); - } - return ${returnFlag}isSelected; -}(jQuery)); -EOT; - } - - protected function getSelect2Selector($selector) - { - return $selector; - //return preg_replace("/^\#((?!s2id_).+)$/", '#s2id_$1', $selector); - } - - protected function getAcceptanceModule() - { - if (!$this->hasModule('WebDriver')) { - throw new \Exception('You must enable the WebDriver module', 1); - } - - return $this->getModule('WebDriver'); - } -} diff --git a/tests/_support/Helper/Select2Ajax.php b/tests/_support/Helper/Select2Ajax.php deleted file mode 100755 index 7d169fbb1..000000000 --- a/tests/_support/Helper/Select2Ajax.php +++ /dev/null @@ -1,88 +0,0 @@ -execute($selector, $timeout, $code); - } - - public function selectByPosition($selector, $position, $timeout = 5) - { - $code = ' - var result = options['.$position.']; - $("'.$selector.'").selectSetNew(result.id, result.text);'; - - $this->execute($selector, $timeout, $code); - } - - protected function execute($selector, $timeout, $code) - { - $t = $this->getAcceptanceModule(); - $selector = $this->getSelect2Selector($selector); - $this->waitForSelect2($selector, $timeout); - - if (is_int($option)) { - $option = (string) $option; - } - - $results_selector = str_replace('#', '', $selector); - - $script = << ({key,value})); - - if(output[0]) { - options.push(output[0].value.data); - } - }) - - $code -}); -EOT; - - $t->executeJS($script, [$timeout]); - } -} diff --git a/tests/_support/Helper/Unit.php b/tests/_support/Helper/Unit.php deleted file mode 100755 index 4d27aa359..000000000 --- a/tests/_support/Helper/Unit.php +++ /dev/null @@ -1,10 +0,0 @@ -login('admin', 'admin'); - } - - /** - * Crea una nuova anagrafica di tipo Cliente. - */ - public function testAnagraficaCliente(AcceptanceTester $t) - { - $this->addAnag($t, 'Cliente', 1, '05024030289'); - } - - /** - * Crea una nuova anagrafica di tipo Tecnico. - */ - public function testAnagraficaTecnico(AcceptanceTester $t) - { - $this->addAnag($t, 'Tecnico', 2, '05024030289'); - } - - /** - * Crea una nuova anagrafica di tipo Fornitore. - */ - public function testAnagraficaFornitore(AcceptanceTester $t) - { - $this->addAnag($t, 'Fornitore', 4, '05024030289'); - } - - /** - * Crea una nuova anagrafica di tipo Vettore. - */ - public function testAnagraficaVettore(AcceptanceTester $t) - { - $this->addAnag($t, 'Vettore', 5, '05024030289'); - } - - /** - * Crea una nuova anagrafica di tipo Agente. - */ - public function testAnagraficaAgente(AcceptanceTester $t) - { - $this->addAnag($t, 'Agente', 6, '05024030289'); - } - - /** - * Crea una nuova anagrafica. - */ - protected function addAnag(AcceptanceTester $t, $name = 'ANAGRAFICA DI PROVA', $tipo = 1, $partita_iva = '') - { - // Seleziona il modulo da aprire - $t->navigateTo('Anagrafiche'); - - // Apre la schermata di nuovo elemento - $t->clickAndWaitModal('.btn-primary', '#tabs'); - - // Completa i campi per il nuovo elemento - $t->fillField('Denominazione', $name); - $t->select2('#idtipoanagrafica', $tipo); - $t->click('.btn-box-tool'); - $t->waitForElementVisible('#piva', 3); - $t->fillField('Partita IVA', $partita_iva); - - // Effettua il submit - $t->clickAndWait('Aggiungi', '#add-form'); - - // Controlla il salvataggio finale - $t->seeInField('Denominazione', $name); - } - - /** - * Crea una nuova anagrafica di tipo cliente e la elimina. - */ - protected function addAndDeleteAnag(AcceptanceTester $t, $name = 'ANAGRAFICA DI PROVA', $tipo = 1, $partita_iva = '') - { - $this->addAnag($t, $name, $tipo, $partita_iva); - - // Seleziona l'azione di eliminazione - $t->clickAndWaitSwal('Elimina', '#tab_0'); - - // Conferma l'eliminazione - $t->clickSwalButton('Elimina'); - - // Controlla eliminazione - $t->see('Anagrafica eliminata!', '.alert-success'); - } -} diff --git a/tests/acceptance/BackupCest.php b/tests/acceptance/BackupCest.php deleted file mode 100755 index 179553c14..000000000 --- a/tests/acceptance/BackupCest.php +++ /dev/null @@ -1,46 +0,0 @@ -login('admin', 'admin'); - } - - /** - * Crea un nuovo backup. - */ - protected function createBackup(AcceptanceTester $t) - { - // Seleziona il modulo da aprire - $t->expandSidebarLink('Strumenti'); - $t->navigateTo('Backup'); - - $t->clickAndWaitSwal('Crea backup'); - - // Conferma la creazione - $t->clickSwalButton('Crea'); - - // Controlla il salvataggio finale - $t->see('Nuovo backup creato correttamente!'); - } - - /** - * Ripristina un backup specifico. - */ - protected function restoreBackup(AcceptanceTester $t, $name = null) - { - // Seleziona il modulo da aprire - $t->expandSidebarLink('Strumenti'); - $t->navigateTo('Backup'); - } - - /** - * Crea una nuova anagrafica di tipo Cliente. - */ - protected function testBackup(AcceptanceTester $t) - { - $name = $this->createBackup($t); - } -} diff --git a/tests/acceptance/ContrattiCest.php b/tests/acceptance/ContrattiCest.php deleted file mode 100755 index f09f1659f..000000000 --- a/tests/acceptance/ContrattiCest.php +++ /dev/null @@ -1,74 +0,0 @@ -login('admin', 'admin'); - } - - /** - * Crea un nuovo contratto. - */ - public function testContratto(AcceptanceTester $t) - { - $this->addContratto($t, 'Contratto di test', 2); - - $this->rowHelper->testImporti($t); - - //$t->click('Stampa'); - } - - protected function _inject(RowHelper $rowHelper) - { - $this->rowHelper = $rowHelper; - } - - /** - * Crea un nuovo contratto. - */ - protected function addContratto(AcceptanceTester $t, $name, $anagrafica) - { - // Seleziona il modulo da aprire - $t->expandSidebarLink('Vendite'); - $t->navigateTo('Contratti'); - - // Apre la schermata di nuovo elemento - $t->clickAndWaitModal('.btn-primary', '#tabs'); - - // Completa i campi per il nuovo elemento - $t->fillField('Nome', $name); - $t->select2ajax('#idanagrafica', $anagrafica); - - // Effettua il submit - $t->clickAndWait('Aggiungi', '#add-form'); - - // Controlla il salvataggio finale - $t->see('Aggiunto contratto'); - } - - /** - * Crea una nuova anagrafica di tipo cliente e la elimina. - */ - protected function addAndDeleteContratto(AcceptanceTester $t, $name, $anagrafica = 2) - { - $this->addAnag($t, $name, $anagrafica); - - // Seleziona l'azione di eliminazione - $t->clickAndWaitSwal('Elimina', '#tab_0'); - - // Conferma l'eliminazione - $t->clickSwalButton('Elimina'); - - // Controlla eliminazione - $t->see('Contratto eliminato!', '.alert-success'); - } -} diff --git a/tests/acceptance/DDTCest.php b/tests/acceptance/DDTCest.php deleted file mode 100755 index 6aad70b4a..000000000 --- a/tests/acceptance/DDTCest.php +++ /dev/null @@ -1,84 +0,0 @@ -login('admin', 'admin'); - } - - /** - * Crea un nuovo ddt. - */ - public function testDdtDiVendita(AcceptanceTester $t) - { - $this->addDdt($t, true, 2, 2); - - $this->rowHelper->testImporti($t); - - //$t->click('Stampa'); - } - - /** - * Crea un nuovo ddt. - */ - public function testDdtDiAcquisto(AcceptanceTester $t) - { - $this->addDdt($t, false, 3, 1); - - $this->rowHelper->testImporti($t, 'uscita'); - } - - protected function _inject(RowHelper $rowHelper) - { - $this->rowHelper = $rowHelper; - } - - /** - * Crea un nuovo ddt. - */ - protected function addDdt(AcceptanceTester $t, $entrata, $anagrafica, $tipo) - { - // Seleziona il modulo da aprire - $t->expandSidebarLink('Magazzino'); - $t->navigateTo($entrata == true ? 'Ddt in uscita' : 'Ddt in entrata'); - - // 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('#idtipoddt', $tipo); - - // Effettua il submit - $t->clickAndWait('Aggiungi', '#add-form'); - - // Controlla il salvataggio finale - $t->see('Aggiunto ddt'); - } - - /** - * Crea una nuova anagrafica di tipo cliente e la elimina. - */ - protected function addAndDeleteDdt(AcceptanceTester $t, $entrata, $anagrafica, $tipo) - { - $this->addAnag($t, $entrata, $anagrafica, $tipo); - - // Seleziona l'azione di eliminazione - $t->clickAndWaitSwal('Elimina', '#tab_0'); - - // Conferma l'eliminazione - $t->clickSwalButton('Elimina'); - - // Controlla eliminazione - $t->see('Ddt eliminato!', '.alert-success'); - } -} diff --git a/tests/acceptance/FattureCest.php b/tests/acceptance/FattureCest.php deleted file mode 100755 index cb6011e1e..000000000 --- a/tests/acceptance/FattureCest.php +++ /dev/null @@ -1,86 +0,0 @@ -login('admin', 'admin'); - } - - /** - * Crea una nuova fattura di vendita. - */ - public function testFatturaDiVendita(AcceptanceTester $t) - { - $this->addFattura($t, true, 2, 2); - - $this->rowHelper->testImporti($t); - } - - /** - * Crea una nuova fattura di acquisto. - */ - public function testFatturaDiAcquisto(AcceptanceTester $t) - { - $this->addFattura($t, false, 1, 4); - - // Fix pagamento vuoto - $t->select2('#idpagamento', 109); - $t->clickAndWait('Salva'); - - $this->rowHelper->testImporti($t, 'uscita'); - } - - protected function _inject(RowHelper $rowHelper) - { - $this->rowHelper = $rowHelper; - } - - /** - * Crea una nuova fattura. - */ - 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 - $t->see('Aggiunta fattura'); - } - - /** - * Crea una nuova fattura e la elimina. - */ - protected function addAndDeleteFattura(AcceptanceTester $t, $cliente, $tipo) - { - $this->addAnag($t, $cliente, $tipo); - - // Seleziona l'azione di eliminazione - $t->clickAndWaitSwal('Elimina', '#tab_0'); - - // Conferma l'eliminazione - $t->clickSwalButton('Elimina'); - - // Controlla eliminazione - $t->see('Fattura eliminata!', '.alert-success'); - } -} diff --git a/tests/acceptance/OrdiniCest.php b/tests/acceptance/OrdiniCest.php deleted file mode 100755 index f9c55d6d7..000000000 --- a/tests/acceptance/OrdiniCest.php +++ /dev/null @@ -1,87 +0,0 @@ -login('admin', 'admin'); - } - - /** - * Crea un nuovo ordine. - */ - public function testOrdineCliente(AcceptanceTester $t) - { - $this->addOrdine($t, true, 2); - - $this->rowHelper->testImporti($t); - - //$t->click('Stampa'); - } - - /** - * Crea un nuovo ordine. - */ - public function testOrdineFornitore(AcceptanceTester $t) - { - $this->addOrdine($t, false, 4); - - // Fix pagamento vuoto - $t->select2('#idpagamento', 109); - $t->clickAndWait('Salva'); - - $this->rowHelper->testImporti($t, 'uscita'); - } - - protected function _inject(RowHelper $rowHelper) - { - $this->rowHelper = $rowHelper; - } - - /** - * Crea un nuovo ordine. - */ - protected function addOrdine(AcceptanceTester $t, $entrata, $anagrafica) - { - // Seleziona il modulo da aprire - $t->expandSidebarLink($entrata == true ? 'Vendite' : 'Acquisti'); - $t->navigateTo($entrata == true ? 'Ordini cliente' : 'Ordini fornitore'); - - // Apre la schermata di nuovo elemento - $t->clickAndWaitModal('.btn-primary', '#tabs'); - - // Completa i campi per il nuovo elemento - $t->select2ajax('#idanagrafica', $anagrafica); - - // Effettua il submit - $t->clickAndWait('Aggiungi', '#add-form'); - - // Controlla il salvataggio finale - $t->see('Aggiunto ordine'); - } - - /** - * Crea una nuova anagrafica di tipo cliente e la elimina. - */ - protected function addAndDeleteOrdine(AcceptanceTester $t, $entrata, $anagrafica = 2) - { - $this->addAnag($t, $entrata, $anagrafica); - - // Seleziona l'azione di eliminazione - $t->clickAndWaitSwal('Elimina', '#tab_0'); - - // Conferma l'eliminazione - $t->clickSwalButton('Elimina'); - - // Controlla eliminazione - $t->see('Ordine eliminato!', '.alert-success'); - } -} diff --git a/tests/acceptance/PreventiviCest.php b/tests/acceptance/PreventiviCest.php deleted file mode 100755 index 322a24b01..000000000 --- a/tests/acceptance/PreventiviCest.php +++ /dev/null @@ -1,75 +0,0 @@ -login('admin', 'admin'); - } - - /** - * Crea un nuovo preventivo. - */ - public function testPreventivo(AcceptanceTester $t) - { - $this->addPreventivo($t, 'Preventivo di test', 2); - - $this->rowHelper->testImporti($t); - - //$t->click('Stampa'); - } - - protected function _inject(RowHelper $rowHelper) - { - $this->rowHelper = $rowHelper; - } - - /** - * Crea un nuovo preventivo. - */ - protected function addPreventivo(AcceptanceTester $t, $name, $anagrafica, $tipo = 'GEN') - { - // Seleziona il modulo da aprire - $t->expandSidebarLink('Vendite'); - $t->navigateTo('Preventivi'); - - // Apre la schermata di nuovo elemento - $t->clickAndWaitModal('.btn-primary', '#tabs'); - - // Completa i campi per il nuovo elemento - $t->fillField('Nome preventivo', $name); - $t->select2ajax('#idanagrafica', $anagrafica); - $t->select2ajax('#idtipointervento', $tipo); - - // Effettua il submit - $t->clickAndWait('Aggiungi', '#add-form'); - - // Controlla il salvataggio finale - $t->see('Aggiunto preventivo'); - } - - /** - * Crea una nuova anagrafica di tipo cliente e la elimina. - */ - protected function addAndDeletePreventivo(AcceptanceTester $t, $name, $anagrafica = 2, $tipo = 'GEN') - { - $this->addAnag($t, $name, $anagrafica, $tipo); - - // Seleziona l'azione di eliminazione - $t->clickAndWaitSwal('Elimina', '#tab_0'); - - // Conferma l'eliminazione - $t->clickSwalButton('Elimina'); - - // Controlla eliminazione - $t->see('Preventivo eliminato!', '.alert-success'); - } -} diff --git a/tests/acceptance/_bootstrap.php b/tests/acceptance/_bootstrap.php deleted file mode 100755 index b3d9bbc7f..000000000 --- a/tests/acceptance/_bootstrap.php +++ /dev/null @@ -1 +0,0 @@ -test(null, '|TEST'); - } - - public function testNumbersWithSuffix() - { - $this->test('|TEST'); - } - - public function testCommonNumbers() - { - $this->test(); - } - - public function testDates() - { - $this->test('/YYYY'); - $this->test('/yy'); - - $this->test(null, 'YYYY-'); - $this->test(null, 'yy-'); - } - - protected function test($prefix = null, $suffix = null) - { - $date = date('Y-m-d H:i:s'); - $info = Generator::dateToPattern($date); - - // Individuazione valori relativi a suffisso e prefisso - $prefix_value = Generator::complete($prefix, $info); - $suffix_value = Generator::complete($suffix, $info); - - $step = 3; - - // Pattern di base con numero di caratteri incrementale - $pattern = $prefix.'#'.$suffix; - - $previous = null; - for ($i = 0; $i < 10000; $i = $i + $step) { - $value = $prefix_value.$this->pad($i + 1, $length).$suffix_value; - $this->assertEquals($value, Generator::generate($pattern, $previous, $step, $info)); - - $previous = $value; - } - - // Pattern con padding - $length = 5; - $pattern = $prefix.str_repeat('#', $length).$suffix; - - $previous = null; - for ($i = 0; $i < 10000; $i = $i + $step) { - $value = $prefix_value.$this->pad($i + 1, $length).$suffix_value; - $this->assertEquals($value, Generator::generate($pattern, $previous, $step, $info)); - - $previous = $value; - } - } - - protected function pad($number, $length) - { - return str_pad($number, $length, '0', STR_PAD_LEFT); - } -} diff --git a/tests/unit/_bootstrap.php b/tests/unit/_bootstrap.php deleted file mode 100755 index 25cdd55a6..000000000 --- a/tests/unit/_bootstrap.php +++ /dev/null @@ -1,10 +0,0 @@ - $namespace) { - Autoload::addNamespace($namespace.'\\', __DIR__.'/../../'.$path.'/custom/src'); - Autoload::addNamespace($namespace.'\\', __DIR__.'/../../'.$path.'/src'); -} diff --git a/update/2_4_49.php b/update/2_4_49.php new file mode 100644 index 000000000..ea7dbf6c0 --- /dev/null +++ b/update/2_4_49.php @@ -0,0 +1,12 @@ + $value) { + $files[$key] = realpath(base_dir().'/'.$value); +} + +delete($files);