templateid. ' AND i.flags=0'. ')'. ' AND t.flags=0' ); } /** * @dataProvider update */ public function testInheritanceTrigger_SimpleUpdate($data) { $sqlTriggers = 'SELECT * FROM triggers ORDER BY triggerid'; $oldHashTriggers = CDBHelper::getHash($sqlTriggers); $this->zbxTestLogin('zabbix.php?action=trigger.list&context=host&filter_rst=1&filter_hostids[0]='.$this->hostid); $this->zbxTestClickLinkTextWait($data['description']); COverlayDialogElement::find()->waitUntilReady()->one(); $this->zbxTestCheckTitle('Configuration of triggers'); $this->query('button:Update')->one()->click(); $this->zbxTestWaitUntilMessageTextPresent('msg-good', 'Trigger updated'); $this->assertEquals($oldHashTriggers, CDBHelper::getHash($sqlTriggers)); } public static function create() { return [ [ [ 'expected' => TEST_GOOD, 'description' => 'testInheritanceTrigger', 'expression' => 'last(/Inheritance test template/test-inheritance-item1)=0' ] ], [ [ 'expected' => TEST_BAD, 'description' => 'testInheritanceTrigger1', 'expression' => 'last(/Inheritance test template/key-item-inheritance-test)=0', 'title' => 'Cannot add trigger', 'errors' => 'Trigger "testInheritanceTrigger1" already exists on "Inheritance test template".' ] ] ]; } /** * @dataProvider create */ public function testInheritanceTrigger_SimpleCreate($data) { $this->zbxTestLogin('zabbix.php?action=trigger.list&context=template&filter_rst=1&filter_hostids[0]='.$this->templateid); $this->zbxTestContentControlButtonClickTextWait('Create trigger'); $dialog = COverlayDialogElement::find()->waitUntilReady()->one(); $this->zbxTestInputType('name', $data['description']); $this->zbxTestInputType('expression', $data['expression']); $dialog->getFooter()->query('button:Add')->one()->click(); switch ($data['expected']) { case TEST_GOOD: $dialog->ensureNotPresent(); $this->zbxTestCheckTitle('Configuration of triggers'); $this->zbxTestCheckHeader('Triggers'); $this->zbxTestTextPresent('Trigger added'); $this->zbxTestTextPresent($data['description']); break; case TEST_BAD: $this->zbxTestCheckTitle('Configuration of triggers'); $this->zbxTestCheckHeader('Triggers'); $this->assertMessage(TEST_BAD, $data['title'], $data['errors']); break; } } }