diff options
author | Mārtiņš Tālbergs <martins.talbergs@zabbix.com> | 2021-02-26 17:52:43 +0300 |
---|---|---|
committer | Mārtiņš Tālbergs <martins.talbergs@zabbix.com> | 2021-02-26 18:17:22 +0300 |
commit | 91b38cc69d6efdd60da89d4396441a41a11ae7ce (patch) | |
tree | 9fa8ebd10ece934e70f058b215fb765f9d7d9b0b /ui | |
parent | c68ed0d7e1b6d0a1de2939e5a0509f5b6e3fc2bf (diff) |
..F....... [ZBXNEXT-6288] fixed unit tests; fixed API tests
Diffstat (limited to 'ui')
12 files changed, 3 insertions, 478 deletions
diff --git a/ui/tests/api_json/data/data_test.sql b/ui/tests/api_json/data/data_test.sql index 2b63b4a57f3..1b4aa7275f9 100644 --- a/ui/tests/api_json/data/data_test.sql +++ b/ui/tests/api_json/data/data_test.sql @@ -107,26 +107,18 @@ INSERT INTO users (userid, alias, passwd, autologin, autologout, lang, refresh, INSERT INTO users (userid, alias, passwd, autologin, autologout, lang, refresh, roleid, theme, attempt_failed, attempt_clock, rows_per_page) VALUES (12, 'api-user-delete2', '5fce1b3e34b520afeffb37ce08c7cd66', 0, '15m', 'en_GB', '30s', 2, 'default', 0, 0, 50); INSERT INTO users (userid, alias, passwd, autologin, autologout, lang, refresh, roleid, theme, attempt_failed, attempt_clock, rows_per_page) VALUES (13, 'api-user-action', '5fce1b3e34b520afeffb37ce08c7cd66', 0, '15m', 'en_GB', '30s', 2, 'default', 0, 0, 50); INSERT INTO users (userid, alias, passwd, autologin, autologout, lang, refresh, roleid, theme, attempt_failed, attempt_clock, rows_per_page) VALUES (14, 'api-user-map', '5fce1b3e34b520afeffb37ce08c7cd66', 0, '15m', 'en_GB', '30s', 2, 'default', 0, 0, 50); -INSERT INTO users (userid, alias, passwd, autologin, autologout, lang, refresh, roleid, theme, attempt_failed, attempt_clock, rows_per_page) VALUES (15, 'api-user-screen', '5fce1b3e34b520afeffb37ce08c7cd66', 0, '15m', 'en_GB', '30s', 2, 'default', 0, 0, 50); -INSERT INTO users (userid, alias, passwd, autologin, autologout, lang, refresh, roleid, theme, attempt_failed, attempt_clock, rows_per_page) VALUES (16, 'api-user-slideshow', '5fce1b3e34b520afeffb37ce08c7cd66', 0, '15m', 'en_GB', '30s', 2, 'default', 0, 0, 50); INSERT INTO users_groups (id, usrgrpid, userid) VALUES (12, 14, 9); INSERT INTO users_groups (id, usrgrpid, userid) VALUES (13, 14, 10); INSERT INTO users_groups (id, usrgrpid, userid) VALUES (14, 14, 11); INSERT INTO users_groups (id, usrgrpid, userid) VALUES (15, 14, 12); INSERT INTO users_groups (id, usrgrpid, userid) VALUES (16, 9, 13); INSERT INTO users_groups (id, usrgrpid, userid) VALUES (17, 14, 14); -INSERT INTO users_groups (id, usrgrpid, userid) VALUES (18, 14, 15); -INSERT INTO users_groups (id, usrgrpid, userid) VALUES (19, 14, 16); INSERT INTO users_groups (id, usrgrpid, userid) VALUES (20, 14, 5); INSERT INTO actions (actionid, name, eventsource, evaltype, status, esc_period) VALUES (17, 'API action with user', 0, 0, 0, 60); INSERT INTO operations (operationid, actionid, operationtype, esc_period, esc_step_from, esc_step_to, evaltype) VALUES (32, 17, 0, 0, 1, 1, 0); INSERT INTO opmessage (operationid, default_msg, subject, message, mediatypeid) VALUES (32, 0, '{TRIGGER.NAME}: {TRIGGER.STATUS}', '{TRIGGER.NAME}: {TRIGGER.STATUS}Last value: {ITEM.LASTVALUE}{TRIGGER.URL}', NULL); INSERT INTO opmessage_usr (opmessage_usrid, operationid, userid) VALUES (4, 32, 13); INSERT INTO sysmaps (sysmapid, name, width, height, backgroundid, label_type, label_location, highlight, expandproblem, markelements, show_unack, userid, private) VALUES (6, 'API map', 800, 600, NULL, 0, 0, 1, 1, 1, 2, 14, 0); -INSERT INTO screens (screenid, name, hsize, vsize, userid, private) VALUES (200021, 'API screen', 1, 1, 15, 0); -INSERT INTO slideshows (slideshowid, name, delay, userid, private) VALUES (200004, 'API slide show', 10, 16, 0); -INSERT INTO screens (screenid, name, hsize, vsize, userid, private) VALUES (200022, 'API screen for slide show', 1, 1, 1, 0); -INSERT INTO slides (slideid, slideshowid, screenid, step, delay) VALUES (200012, 200004, 200022, 0, 0); -- scripts INSERT INTO hosts (hostid, host, name, status, description) VALUES (50013, 'API disabled host', 'API disabled host', 1, ''); diff --git a/ui/tests/api_json/testConfiguration.php b/ui/tests/api_json/testConfiguration.php index fe39d5d94e2..272572e4cda 100644 --- a/ui/tests/api_json/testConfiguration.php +++ b/ui/tests/api_json/testConfiguration.php @@ -156,7 +156,6 @@ class testConfiguration extends CAPITest { ['hosts'], ['images'], ['maps'], - ['screens'], ['templates'], ['valueMaps'] ]; @@ -242,13 +241,6 @@ class testConfiguration extends CAPITest { [ [ 'options' => [ - 'screens' => ['3'] - ] - ] - ], - [ - [ - 'options' => [ 'templates' => ['10069'] ] ] @@ -462,11 +454,6 @@ class testConfiguration extends CAPITest { 'unexpected' => ['deleteMissing'] ]], [[ - 'parameter' => 'screens', - 'expected' => ['createMissing', 'updateExisting'], - 'unexpected' => ['deleteMissing'] - ]], - [[ 'parameter' => 'templateLinkage', 'expected' => ['createMissing', 'deleteMissing'], 'unexpected' => ['updateExisting'] @@ -791,37 +778,6 @@ class testConfiguration extends CAPITest { ], [ 'format' => 'xml', - 'parameter' => 'screens', - 'source' => '<?xml version="1.0" encoding="UTF-8"?> - <zabbix_export> - <version>3.2</version> - <date>2016-12-12T07:18:00Z</date> - <screens> - <screen> - <name>API screen xml import</name> - <hsize>1</hsize> - <vsize>1</vsize> - </screen> - </screens> - </zabbix_export>', - 'sql' => 'select * from screens where name=\'API screen xml import\'' - ], - [ - 'format' => 'json', - 'parameter' => 'screens', - 'source' => '{"zabbix_export":{"version":"3.2","date":"2016-12-12T07:18:00Z","screens":[{"name":"API screen json import",' - . '"hsize":"1","vsize":"1"}]}}', - 'sql' => 'select * from screens where name=\'API screen json import\'' - ], - [ - 'format' => 'yaml', - 'parameter' => 'screens', - 'source' => "---\nzabbix_export:\n version: \"4.0\"\n date: \"2020-08-03T12:44:35Z\"\n". - " screens:\n - name: API screen yaml import\n hsize: \"1\"\n vsize: \"1\"\n screen_items: []\n...\n", - 'sql' => 'select * from screens where name=\'API screen yaml import\'' - ], - [ - 'format' => 'xml', 'parameter' => 'valueMaps', 'source' => '<?xml version="1.0" encoding="UTF-8"?> <zabbix_export> diff --git a/ui/tests/api_json/testUsers.php b/ui/tests/api_json/testUsers.php index 4f897b768f8..408be747868 100644 --- a/ui/tests/api_json/testUsers.php +++ b/ui/tests/api_json/testUsers.php @@ -1646,16 +1646,6 @@ class testUsers extends CAPITest { 'user' => ['14'], 'expected_error' => 'User "api-user-map" is map "API map" owner.' ], - // Check if deleted users have a screen. - [ - 'user' => ['15'], - 'expected_error' => 'User "api-user-screen" is screen "API screen" owner.' - ], - // Check if deleted users have a slide show. - [ - 'user' => ['16'], - 'expected_error' => 'User "api-user-slideshow" is slide show "API slide show" owner.' - ], // Check successfully delete of user. [ 'user' => ['10'], diff --git a/ui/tests/api_json/xml/testDeleteMissingForLinkedTemplateApplication.xml b/ui/tests/api_json/xml/testDeleteMissingForLinkedTemplateApplication.xml index c32fd0fdbe6..2f4785d09fa 100644 --- a/ui/tests/api_json/xml/testDeleteMissingForLinkedTemplateApplication.xml +++ b/ui/tests/api_json/xml/testDeleteMissingForLinkedTemplateApplication.xml @@ -27,7 +27,6 @@ <name>Template B</name> </template> </templates> - <screens/> </template> <template> <template>Template B</template> @@ -108,7 +107,6 @@ <httptests/> <macros/> <templates/> - <screens/> </template> </templates> </zabbix_export> diff --git a/ui/tests/selenium/data/data_test.sql b/ui/tests/selenium/data/data_test.sql index 31c9aeff966..583e6aeaf93 100644 --- a/ui/tests/selenium/data/data_test.sql +++ b/ui/tests/selenium/data/data_test.sql @@ -2618,9 +2618,6 @@ INSERT INTO widget_field (widget_fieldid, widgetid, type, name, value_int) VALUE INSERT INTO widget (widgetid, dashboardid, type, name, x, y, width, height) VALUES (1056, 130, 'discovery', 'Test copy Discovery status', 9, 4, 4, 2); INSERT INTO widget_field (widget_fieldid, widgetid, type, name, value_int) VALUES (90267, 1056, 0, 'rf_rate', 900); -INSERT INTO widget (widgetid, dashboardid, type, name, x, y, width, height) VALUES (1057, 130, 'favscreens', 'Test copy Favourite screens', 7, 4, 2, 2); -INSERT INTO widget_field (widget_fieldid, widgetid, type, name, value_int) VALUES (90268, 1057, 0, 'rf_rate', 30); - INSERT INTO widget (widgetid, dashboardid, type, name, x, y, width, height) VALUES (1058, 130, 'graphprototype', 'Test copy Graph prototype', 0, 6, 13, 4); INSERT INTO widget_field (widget_fieldid, widgetid, type, name, value_int) VALUES (90269, 1058, 0, 'columns', 3); INSERT INTO widget_field (widget_fieldid, widgetid, type, name, value_int) VALUES (90270, 1058, 0, 'rows', 2); diff --git a/ui/tests/unit/include/classes/import/converters/C10ImportConverterTest.php b/ui/tests/unit/include/classes/import/converters/C10ImportConverterTest.php index 5d320ff2457..8ff693a85f3 100644 --- a/ui/tests/unit/include/classes/import/converters/C10ImportConverterTest.php +++ b/ui/tests/unit/include/classes/import/converters/C10ImportConverterTest.php @@ -2071,65 +2071,6 @@ class C10ImportConverterTest extends CImportConverterTest { } - public function testConvertScreens() { - $this->assertConvert( - $this->createExpectedResult([]), - $this->createSource() - ); - $this->assertConvert( - $this->createExpectedResult(['screens' => '']), - $this->createSource(['screens' => '']) - ); - - $source = $this->createSource([ - 'screens' => [ - [], - [ - 'screenitems' => '' - ], - [ - 'screenitems' => [ - // resource is exported as "0" if it's not used - [ - 'resourceid' => '0' - ], - [ - 'resourceid' => [ - 'key_' => 'itemkey' - ] - ] - ] - ] - ] - ]); - - $expectedResult = $this->createExpectedResult([ - 'screens' => [ - [], - [ - 'screen_items' => '' - ], - [ - 'screen_items' => [ - [ - 'resource' => '0', - 'sort_triggers' => '' - ], - [ - 'resource' => [ - 'key' => 'itemkey' - ], - 'sort_triggers' => '' - ] - ] - ] - ] - ]); - - $this->assertConvert($expectedResult, $source); - - } - protected function createSource(array $data = []) { return [ 'zabbix_export' => array_merge([ diff --git a/ui/tests/unit/include/classes/import/converters/C20ImportConverterTest.php b/ui/tests/unit/include/classes/import/converters/C20ImportConverterTest.php index 2bef42605b0..601458af539 100644 --- a/ui/tests/unit/include/classes/import/converters/C20ImportConverterTest.php +++ b/ui/tests/unit/include/classes/import/converters/C20ImportConverterTest.php @@ -346,39 +346,6 @@ class C20ImportConverterTest extends CImportConverterTest { ] ], [ - 'screens' => [ - [], - [ - 'screen_items' => [ - [ - 'rowspan' => 0, - 'colspan' => 0, - 'resourcetype' => SCREEN_RESOURCE_SIMPLE_GRAPH, - 'resource' => [ - 'key' => 'net.tcp.service[ntp]' - ] - ], - [ - 'rowspan' => 1, - 'colspan' => 2, - 'resourcetype' => SCREEN_RESOURCE_PLAIN_TEXT, - 'resource' => [ - 'key' => 'net.tcp.service[ntp]' - ] - ], - [ - 'rowspan' => 3, - 'colspan' => 4, - 'resourcetype' => SCREEN_RESOURCE_PLAIN_TEXT, - 'resource' => [ - 'key' => 'net.tcp.service[tcp,,5432]' - ] - ] - ] - ] - ] - ], - [ 'discovery_rules' => [ [ 'type' => ITEM_TYPE_SNMPV3, @@ -465,46 +432,6 @@ class C20ImportConverterTest extends CImportConverterTest { 'description' => '' ], [ - 'screens' => [ - [], - [ - 'screen_items' => [ - [ - 'rowspan' => '1', - 'colspan' => '1', - 'resourcetype' => SCREEN_RESOURCE_SIMPLE_GRAPH, - 'resource' => [ - 'key' => 'net.udp.service[ntp]' - ], - 'application' => '', - 'max_columns' => '' - ], - [ - 'rowspan' => 1, - 'colspan' => 2, - 'resourcetype' => SCREEN_RESOURCE_PLAIN_TEXT, - 'resource' => [ - 'key' => 'net.udp.service[ntp]' - ], - 'application' => '', - 'max_columns' => '' - ], - [ - 'rowspan' => 3, - 'colspan' => 4, - 'resourcetype' => SCREEN_RESOURCE_PLAIN_TEXT, - 'resource' => [ - 'key' => 'net.tcp.service[tcp,,5432]' - ], - 'application' => '', - 'max_columns' => '' - ] - ] - ] - ], - 'description' => '' - ], - [ 'discovery_rules' => [ [ 'type' => ITEM_TYPE_SNMPV3, @@ -602,80 +529,6 @@ class C20ImportConverterTest extends CImportConverterTest { ] ] ] - ], - [ - [ - 'screens' => [ - [], - [ - 'screen_items' => [ - [ - 'rowspan' => 0, - 'colspan' => 0, - 'resourcetype' => SCREEN_RESOURCE_SIMPLE_GRAPH, - 'resource' => [ - 'key' => 'net.tcp.service[ntp]' - ] - ], - [ - 'rowspan' => 1, - 'colspan' => 2, - 'resourcetype' => SCREEN_RESOURCE_PLAIN_TEXT, - 'resource' => [ - 'key' => 'net.tcp.service[ntp]' - ] - ], - [ - 'rowspan' => 3, - 'colspan' => 4, - 'resourcetype' => SCREEN_RESOURCE_PLAIN_TEXT, - 'resource' => [ - 'key' => 'net.tcp.service[tcp,,5432]' - ] - ] - ] - ] - ] - ], - [ - 'screens' => [ - [], - [ - 'screen_items' => [ - [ - 'rowspan' => '1', - 'colspan' => '1', - 'resourcetype' => SCREEN_RESOURCE_SIMPLE_GRAPH, - 'resource' => [ - 'key' => 'net.udp.service[ntp]' - ], - 'application' => '', - 'max_columns' => '' - ], - [ - 'rowspan' => 1, - 'colspan' => 2, - 'resourcetype' => SCREEN_RESOURCE_PLAIN_TEXT, - 'resource' => [ - 'key' => 'net.udp.service[ntp]' - ], - 'application' => '', - 'max_columns' => '' - ], - [ - 'rowspan' => 3, - 'colspan' => 4, - 'resourcetype' => SCREEN_RESOURCE_PLAIN_TEXT, - 'resource' => [ - 'key' => 'net.tcp.service[tcp,,5432]' - ], - 'application' => '', - 'max_columns' => '' - ] - ] - ] - ] - ] ] ]; } diff --git a/ui/tests/unit/include/classes/import/converters/C42ImportConverterTest.php b/ui/tests/unit/include/classes/import/converters/C42ImportConverterTest.php index 0af9448b218..17045967a77 100644 --- a/ui/tests/unit/include/classes/import/converters/C42ImportConverterTest.php +++ b/ui/tests/unit/include/classes/import/converters/C42ImportConverterTest.php @@ -25,146 +25,6 @@ class C42ImportConverterTest extends CImportConverterTest { return [ [ [ - 'screens' => [ - [ - 'name' => 'Parent screen 1', - 'hsize' => 1, - 'vsize' => 4, - 'screen_items' => [ - '0' => [ - 'resourcetype' => 8, - 'width' => 500, - 'height' => 100, - 'x' => 0, - 'y' => 0, - 'colspan' => 1, - 'rowspan' => 1, - 'valign' => 0, - 'halign' => 0, - 'resource' => [ - 'name' => 'Child screen' - ], - 'max_columns' => 3 - ], - '1' => [ - 'resourcetype' => 7, - 'width' => 500, - 'height' => 100, - 'x' => 0, - 'y' => 1, - 'colspan' => 1, - 'rowspan' => 1, - 'valign' => 0, - 'halign' => 0, - 'resource' => [ - 'name' => 'Clock' - ], - 'max_columns' => 3 - ] - ] - ], - [ - 'name' => 'Parent screen 2', - 'hsize' => 1, - 'vsize' => 4, - 'screen_items' => [ - '0' => [ - 'resourcetype' => 8, - 'width' => 500, - 'height' => 100, - 'x' => 0, - 'y' => 0, - 'colspan' => 1, - 'rowspan' => 1, - 'valign' => 0, - 'halign' => 0, - 'resource' => [ - 'name' => 'Child screen' - ], - 'max_columns' => 3 - ] - ] - ], - [ - 'name' => 'Child screen', - 'hsize' => 1, - 'vsize' => 4, - 'screen_items' => [ - '0' => [ - 'resourcetype' => 7, - 'width' => 500, - 'height' => 100, - 'x' => 0, - 'y' => 0, - 'colspan' => 1, - 'rowspan' => 1, - 'valign' => 0, - 'halign' => 0, - 'resource' => [ - 'name' => 'Clock' - ], - 'max_columns' => 3 - ] - ] - ] - ] - ], - [ - 'screens' => [ - [ - 'name' => 'Parent screen 1', - 'hsize' => 1, - 'vsize' => 4, - 'screen_items' => [ - '1' => [ - 'resourcetype' => 7, - 'width' => 500, - 'height' => 100, - 'x' => 0, - 'y' => 1, - 'colspan' => 1, - 'rowspan' => 1, - 'valign' => 0, - 'halign' => 0, - 'resource' => [ - 'name' => 'Clock' - ], - 'max_columns' => 3 - ] - ] - ], - [ - 'name' => 'Parent screen 2', - 'hsize' => 1, - 'vsize' => 4 - ], - [ - 'name' => 'Child screen', - 'hsize' => 1, - 'vsize' => 4, - 'screen_items' => [ - '0' => [ - 'resourcetype' => 7, - 'width' => 500, - 'height' => 100, - 'x' => 0, - 'y' => 0, - 'colspan' => 1, - 'rowspan' => 1, - 'valign' => 0, - 'halign' => 0, - 'resource' => [ - 'name' => 'Clock' - ], - 'max_columns' => 3 - ] - ] - ] - ] - ] - ], - [ - [ 'hosts' => [ [ 'inventory' => [ diff --git a/ui/tests/unit/include/classes/import/readers/CXmlImportReaderTest.php b/ui/tests/unit/include/classes/import/readers/CXmlImportReaderTest.php index 4321049a8bc..030911ab0f0 100644 --- a/ui/tests/unit/include/classes/import/readers/CXmlImportReaderTest.php +++ b/ui/tests/unit/include/classes/import/readers/CXmlImportReaderTest.php @@ -70,7 +70,6 @@ class CXmlImportReaderTest extends PHPUnit_Framework_TestCase { ' <status>0</status>'."\n". ' </host>'."\n". '</hosts>'."\n". - '<screens/>'."\n". '<images/>'."\n". '</zabbix_export>', [ @@ -88,7 +87,6 @@ class CXmlImportReaderTest extends PHPUnit_Framework_TestCase { 'status' => '0' ] ], - 'screens' => '', 'images' => '' ] ] @@ -121,7 +119,7 @@ class CXmlImportReaderTest extends PHPUnit_Framework_TestCase { '<'.'?xml version="1.0"?'.'>'."\n". '<zabbix_export version="1.0" date="09.01.10" time="14.23">'."\n". '<hosts></hosts>'."\n". - '<screens></screens>text'."\n". + 'text'."\n". '<images></images>'."\n". '</zabbix_export>', 'Invalid tag "/zabbix_export": unexpected text "text".' diff --git a/ui/tests/unit/include/classes/import/xml/hostAndTemplate.xml b/ui/tests/unit/include/classes/import/xml/hostAndTemplate.xml index 8fef0d5d430..55bf12574bf 100644 --- a/ui/tests/unit/include/classes/import/xml/hostAndTemplate.xml +++ b/ui/tests/unit/include/classes/import/xml/hostAndTemplate.xml @@ -652,7 +652,6 @@ <items/> <discovery_rules/> <macros/> - <screens/> </template> <template> <template>export-template</template> @@ -1111,37 +1110,6 @@ <name>Template OS Linux by Zabbix agent</name> </template> </templates> - <screens> - <screen> - <name>screen</name> - <hsize>1</hsize> - <vsize>1</vsize> - <screen_items> - <screen_item> - <resourcetype>0</resourcetype> - <width>500</width> - <height>100</height> - <x>0</x> - <y>0</y> - <colspan>1</colspan> - <rowspan>1</rowspan> - <elements>0</elements> - <valign>0</valign> - <halign>0</halign> - <style>0</style> - <url/> - <dynamic>0</dynamic> - <sort_triggers>0</sort_triggers> - <resource> - <name>graph</name> - <host>export-template</host> - </resource> - <max_columns>1</max_columns> - <application/> - </screen_item> - </screen_items> - </screen> - </screens> </template> </templates> <triggers> diff --git a/ui/tests/unit/include/classes/import/xml/schema_1.0.xml b/ui/tests/unit/include/classes/import/xml/schema_1.0.xml index 2269ef54b20..bd761c5e3f4 100644 --- a/ui/tests/unit/include/classes/import/xml/schema_1.0.xml +++ b/ui/tests/unit/include/classes/import/xml/schema_1.0.xml @@ -319,34 +319,6 @@ <description>test:test</description> </dependency> </dependencies> - <screens> - <screen> - <name>test</name> - <hsize>test</hsize> - <vsize>test</vsize> - <screenitems> - <screenitem> - <resourcetype>1</resourcetype> - <resourceid> - <key_>ftp,21</key_> - <host>Template_Simple</host> - </resourceid> - <width>test</width> - <height>test</height> - <x>test</x> - <y>test</y> - <colspan>test</colspan> - <rowspan>test</rowspan> - <elements>test</elements> - <valign>test</valign> - <halign>test</halign> - <style>test</style> - <dynamic>test</dynamic> - <url>test</url> - </screenitem> - </screenitems> - </screen> - </screens> <images> <image> <name>test</name> diff --git a/ui/tests/unit/include/classes/parsers/CValidationRuleTest.php b/ui/tests/unit/include/classes/parsers/CValidationRuleTest.php index d3353971408..0e974c75fcf 100644 --- a/ui/tests/unit/include/classes/parsers/CValidationRuleTest.php +++ b/ui/tests/unit/include/classes/parsers/CValidationRuleTest.php @@ -198,9 +198,9 @@ class CValidationRuleTest extends PHPUnit_Framework_TestCase { 'id' => true ] ], - ['in graphid,itemid,screenid,slideshowid,sysmapid|fatal|required', '', + ['in graphid,itemid,sysmapid|fatal|required', '', [ - 'in' => ['graphid', 'itemid', 'screenid', 'slideshowid', 'sysmapid'], + 'in' => ['graphid', 'itemid', 'sysmapid'], 'fatal' => true, 'required' => true ] |