'url' => 'http://localhost:9090/api/v1/query?query=irate(node_network_transmit_bytes_total\{device!="lo",instance="192.168.150.101"}[1m])',
require_once dirname(__FILE__).'/../../include/CLegacyWebTest.php';
use Facebook\WebDriver\WebDriverBy;
class testFormItemHttpAgent extends CLegacyWebTest {
private function checkFormFields($rows) {
$this->zbxTestClickLinkTextWait($rows['Name']);
$this->zbxTestWaitUntilElementVisible(WebDriverBy::id('name'));
foreach ($rows as $field_name => $value) {
$field_xpath = '//label[text()="'.$field_name.'"]/../..//*[@id]';
$tag = $this->query('xpath', $field_xpath)->one()->getTagName();
$field_id = $this->zbxTestGetAttributeValue($field_xpath, 'id');
if ($tag === 'input' || $tag === 'textarea') {
if ($tag !== 'textarea' && $this->zbxTestGetAttributeValue($field_xpath, 'type') === 'checkbox') {
$this->assertEquals($value, $this->zbxTestCheckboxSelected($field_id));
$this->zbxTestAssertElementValue($field_id, $value);
elseif ($tag === 'select') {
$this->zbxTestDropdownAssertSelected($field_id, $value);
private function processPairFields($rows, $id_part) {
foreach ($rows as $i => $field_pair) {
switch (CTestArrayHelper::get($field_pair, 'action', 'add')) {
if (!$this->zbxTestElementPresentId($id_part.'_name_'.$i)) {
$this->zbxTestClickXpathWait('//div[contains(@id, "'.$id_part.'")]//button[@data-row-action="add_row"]');
$this->zbxTestWaitUntilElementVisible(WebDriverBy::id($id_part.'_name_'.$i));
if (array_key_exists('name', $field_pair)) {
$this->zbxTestWaitUntilElementVisible(WebDriverBy::id($id_part.'_name_'.$i));
$this->zbxTestInputType($id_part.'_name_'.$i, $field_pair['name']);
if (array_key_exists('value', $field_pair)) {
$this->zbxTestWaitUntilElementVisible(WebDriverBy::id($id_part.'_value_'.$i));
$this->zbxTestInputType($id_part.'_value_'.$i, $field_pair['value']);
$this->zbxTestClickXpathWait("//input[@id='".$id_part."_name_".$i."']/../..//button");