require_once dirname(__FILE__).'/../behaviors/CTableBehavior.php';
require_once dirname(__FILE__).'/../behaviors/CMessageBehavior.php';
require_once dirname(__FILE__).'/../behaviors/CWidgetBehavior.php';
require_once dirname(__FILE__).'/../common/testWidgets.php';
class testDashboardWidgetCommunication extends testWidgets {
public function getBehaviors() {
protected static $dashboardid;
protected static $itemids;
protected static $current_broadcasters = [
'Hostgroups page' => 'Map hostgroup broadcaster',
'Hosts page' => 'Geomap host broadcaster',
'Items page' => 'Honeycomb item broadcaster'
const FIRST_HOST_NAME = '1st wc host';
const SECOND_HOST_NAME = '2nd wc host';
const THIRD_HOST_NAME = '3rd wc host';
const FIRST_HOSTGROUP_NAME = '1st wc hostgroup';
const SECOND_HOSTGROUP_NAME = '2nd wc hostgroup';
const THIRD_HOSTGROUP_NAME = '3rd wc hostgroup';
const FIRST_HOST_TRIGGER = 'wc trigger on host 1';
const SECOND_HOST_TRIGGER = 'wc trigger on host 2';
const THIRD_HOST_TRIGGER = 'wc trigger on host 3';
const BROADCASTER_REFERENCES = [
'Map hostgroup broadcaster' => 'NRDLG._hostgroupids',
'Problem hosts hostgroup broadcaster' => 'EKBHR._hostgroupids',
'Problems by severity hostgroup broadcaster' => 'ZYWLY._hostgroupids',
'Web monitoring hostgroup broadcaster' => 'XTPSV._hostgroupids',
'Geomap host broadcaster' => 'JRVYU._hostids',
'Honeycomb host broadcaster' => 'RICVX._hostids',
'Map host broadcaster' => 'BFSOY._hostids',
'Top hosts host broadcaster' => 'ACGKU._hostids',
'Host navigator broadcaster' => 'HSTNV._hostids',
'Honeycomb item broadcaster' => 'QFWQX._itemid',
'Item history item broadcaster' => 'ZNLUI._itemid',
'Item navigator broadcaster' => 'ITMNV._itemid'
const GEOMAP_ICON_INDEXES = [
self::FIRST_HOST_NAME => 3,
self::SECOND_HOST_NAME => 2,
self::THIRD_HOST_NAME => 1
const GEOMAP_FILTERED_ICON_INDEX = 1;
const DEFAULT_WIDGET_CONTENT = [
'Data overview listener' => [
'Hosts' => self::FIRST_HOST_NAME,
'Hosts' => self::SECOND_HOST_NAME,