'Host ZBX6663', 'link' => 'Items', 'checkbox' => 'items' ] ], [ [ 'host' => 'Host ZBX6663', 'link' => 'Triggers', 'checkbox' => 'triggers' ] ], [ [ 'host' => 'Host ZBX6663', 'link' => 'Graphs', 'checkbox' => 'graphs' ] ], [ [ 'host' => 'Host ZBX6663', 'link' => 'Discovery', 'checkbox' => 'items' ] ], [ [ 'host' => 'Host ZBX6663', 'discoveryRule' => 'Item prototypes', 'checkbox' => 'items' ] ], [ [ 'host' => 'Host ZBX6663', 'discoveryRule' => 'Trigger prototypes', 'checkbox' => 'triggers' ] ], [ [ 'host' => 'Host ZBX6663', 'discoveryRule' => 'Graph prototypes', 'checkbox' => 'graphs' ] ], [ [ 'host' => 'Host ZBX6663', 'link' => 'Web', 'checkbox' => 'httptests' ] ], [ [ 'template' => 'Template ZBX6663 First', 'link' => 'Items', 'checkbox' => 'items' ] ], [ [ 'template' => 'Template ZBX6663 First', 'link' => 'Triggers', 'checkbox' => 'triggers' ] ], [ [ 'template' => 'Template ZBX6663 First', 'link' => 'Graphs', 'checkbox' => 'graphs' ] ], [ [ 'template' => 'Template ZBX6663 First', 'link' => 'Discovery', 'checkbox' => 'items' ] ], [ [ 'template' => 'Template ZBX6663 First', 'discoveryRule' => 'Item prototypes', 'checkbox' => 'items' ] ], [ [ 'template' => 'Template ZBX6663 First', 'discoveryRule' => 'Trigger prototypes', 'checkbox' => 'triggers' ] ], [ [ 'template' => 'Template ZBX6663 First', 'discoveryRule' => 'Graph prototypes', 'checkbox' => 'graphs' ] ], [ [ 'template' => 'Template ZBX6663 First', 'link' => 'Web', 'checkbox' => 'httptests' ] ] ]; } /** * @dataProvider zbx_data */ public function testZBX6663_MassSelect($zbx_data) { $checkbox = $zbx_data['checkbox']; if (isset($zbx_data['host'])) { $this->zbxTestLogin(self::HOST_LIST_PAGE); $this->query('button:Reset')->one()->click(); $form = $this->query('name:zbx_filter')->asForm()->waitUntilReady()->one(); $form->fill(['Name' => $zbx_data['host']]); $this->query('button:Apply')->one()->waitUntilClickable()->click(); if (isset($zbx_data['discoveryRule'])) { $this->query('xpath://table[@class="list-table"]')->asTable()->one()->findRow('Name', $zbx_data['host']) ->getColumn('Discovery')->query('link:Discovery')->one()->click(); $this->zbxTestCheckHeader('Discovery rules'); $this->zbxTestClickLinkTextWait($this->discoveryRule); $this->zbxTestClickLinkTextWait($zbx_data['discoveryRule']); } else { $this->query('xpath://table[@class="list-table"]')->asTable()->one()->findRow('Name', $zbx_data['host']) ->getColumn($zbx_data['link'])->query('link', $zbx_data['link'])->one()->click(); } } if (isset($zbx_data['template'])) { $this->zbxTestLogin('zabbix.php?action=template.list'); $this->query('button:Reset')->one()->click(); $form = $this->query('name:zbx_filter')->asForm()->waitUntilReady()->one(); $form->fill(['Name' => $zbx_data['template']]); $this->query('button:Apply')->one()->waitUntilClickable()->click(); if (isset($zbx_data['discoveryRule'])) { $this->query('class:list-table')->asTable()->one()->getRow(0)->query('link:Discovery')->waitUntilVisible()->one()->click(); $this->zbxTestCheckHeader('Discovery rules'); $this->zbxTestClickLinkTextWait($this->discoveryRule); $this->zbxTestClickLinkTextWait($zbx_data['discoveryRule']); } else { $this->query('class:list-table')->asTable()->one()->getRow(0)->query('link', $zbx_data['link'])->waitUntilVisible()->one()->click(); } } $this->zbxTestWaitUntilElementVisible(WebDriverBy::id('selected_count')); $this->zbxTestTextPresent('0 selected'); $this->zbxTestCheckboxSelect("all_$checkbox"); $this->zbxTestClickLinkText($this->templated); $this->zbxTestWaitUntilElementPresent(WebDriverBy::id('selected_count')); $this->zbxTestTextPresent('0 selected'); } }