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'); } }