$this->assertArrayHasKey('actionids', $response['result'], 'Failed to create a discovery action "' . $actionName . '"');
require_once dirname(__FILE__).'/../include/CIntegrationTest.php';
class testDiscoveryRules extends CIntegrationTest {
const DRULE_NAME = 'Test discovery rule';
const DRULE_NAME_ERR = 'Test discovery rule with error';
const DISCOVERY_ACTION_NAME = 'Test discovery action';
const DISCOVERY_ACTION_NAME_ERR = 'Test discovery action with error';
const PROXY_NAME = 'Test proxy';
const MAX_ATTEMPTS_DISCOVERY = 60;
const SNMPAGENT_VALID_OID = 'iso.3.6.1.2.1.1.1.0';
const SNMPAGENT_INVALID_OID = 'invalid.OID';
const SNMPAGENT_EXPECTED_INVALID_OID_ERR_MSG = "'SNMPv2c agent' checks failed: " .
'"snmp_parse_oid(): cannot parse OID "' .
self::SNMPAGENT_INVALID_OID . '": Generic error (Sub-id not found: (top) -> invalid)"';
const SNMPSIM_HOST_IP = '127.0.10.3';
const SNMPSIM_HOST_PORT = '1024';
const SNMPSIM_DRULE_IP_RANGE = '127.0.10.3';
const SNMPSIM_VALID_OID = 'iso.3.6.1.2.1.1.1.0';
const SNMPSIM_DRULE_CONTEXT_NAME = 'host/test/test';
const SNMPSIM_USERNAME = 'zabbix';
const SNMPSIM_DRULE_SECURITY_LEVEL = ITEM_SNMPV3_SECURITYLEVEL_AUTHPRIV;
const SNMPSIM_AUTH_PROTOCOL = 'MD5';
const SNMPSIM_DRULE_AUTH_PROTOCOL = ITEM_SNMPV3_AUTHPROTOCOL_MD5;
const SNMPSIM_AUTH_KEY = 'zabbixAuth';
const SNMPSIM_PRIV_PROTOCOL = 'DES';
const SNMPSIM_DRULE_PRIVACY_PROTOCOL = ITEM_SNMPV3_PRIVPROTOCOL_DES;
const SNMPSIM_PRIV_KEY = 'zabbixPriv';
const SNMPSIM_PROCESS_USER = 'nobody';
const SNMPSIM_PROCESS_GROUP = 'nogroup';
const SNMPSIM_DATA_DIR_REL_PATH = 'data/snmpsim';
private static $discoveryActionId;
private static $discoveredHostId;
private static $drules = array();