function RulesTriggerTestCase::testDefaultRule

Same name in other branches
  1. 8.x-3.x d7-tests/rules_test_trigger_case.test \RulesTriggerTestCase::testDefaultRule()

Tests the provided default rule 'rules_test_default_1'.

File

tests/rules.test, line 1319

Class

RulesTriggerTestCase
Test triggering rules.

Code

public function testDefaultRule() {
    $rule = rules_config_load('rules_test_default_1');
    $this->assertTrue($rule->status & ENTITY_IN_CODE && !($rule->status & ENTITY_IN_DB), 'Default rule can be loaded and has the right status.');
    $this->assertTrue($rule->tags == array(
        'Admin',
        'Tag2',
    ), 'Default rule has correct tags.');
    // Enable.
    $rule->active = TRUE;
    $rule->save();
    // Create a node that triggers the rule.
    $node = $this->drupalCreateNode(array(
        'type' => 'page',
        'sticky' => 0,
        'status' => 0,
    ));
    // Clear messages.
    drupal_get_messages();
    // Let event node_update occur.
    node_save($node);
    $msg = drupal_get_messages();
    $this->assertEqual($msg['status'][0], 'A node has been updated.', 'Default rule has been triggered.');
}