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 host for widgets';
const SECOND_HOST_NAME = '2nd host for widgets';
const THIRD_HOST_NAME = '3rd host for widgets';
const FIRST_HOSTGROUP_NAME = '1st hostgroup for widgets';
const SECOND_HOSTGROUP_NAME = '2nd hostgroup for widgets';
const THIRD_HOSTGROUP_NAME = '3rd hostgroup for widgets';
const FIRST_HOST_TRIGGER = 'trigger on host 1';
const SECOND_HOST_TRIGGER = 'trigger on host 2';
const THIRD_HOST_TRIGGER = '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 = [
'Top items listener' => [
'Hosts' => self::FIRST_HOST_NAME,
'Hosts' => self::SECOND_HOST_NAME,
'Hosts' => self::THIRD_HOST_NAME,