function TriggerUserTokenTestCase::testUserTriggerTokenReplacement in Drupal 7
Tests a variety of token replacements in actions.
File
- modules/
trigger/ trigger.test, line 447 - Tests for trigger.module.
Class
- TriggerUserTokenTestCase
- Tests token substitution in trigger actions.
Code
function testUserTriggerTokenReplacement() {
$test_user = $this
->drupalCreateUser(array(
'administer actions',
'administer users',
'change own username',
'access user profiles',
));
$this
->drupalLogin($test_user);
$triggers = array(
'user_login',
'user_insert',
'user_update',
'user_delete',
'user_logout',
'user_view',
);
foreach ($triggers as $trigger) {
$this
->assignSystemMessageAction($trigger);
$this
->assignSystemEmailAction($trigger);
}
$this
->drupalLogout();
$this
->assertSystemEmailTokenReplacement('user_logout', $test_user);
$this
->drupalLogin($test_user);
$this
->assertSystemMessageAndEmailTokenReplacement('user_login', $test_user, 2);
$this
->assertSystemMessageAndEmailTokenReplacement('user_view', $test_user, 2);
$this
->drupalPost("user/{$test_user->uid}/edit", array(
'name' => $test_user->name . '_changed',
), t('Save'));
$test_user->name .= '_changed';
// Since we just changed it.
$this
->assertSystemMessageAndEmailTokenReplacement('user_update', $test_user, 2);
$this
->drupalGet('user');
$this
->assertSystemMessageAndEmailTokenReplacement('user_view', $test_user);
$new_user = $this
->drupalCreateUser(array(
'administer actions',
'administer users',
'cancel account',
'access administration pages',
));
$this
->assertSystemEmailTokenReplacement('user_insert', $new_user);
$this
->drupalLogin($new_user);
$user_to_delete = $this
->drupalCreateUser(array(
'access content',
));
variable_set('user_cancel_method', 'user_cancel_delete');
$this
->drupalPost("user/{$user_to_delete->uid}/cancel", array(), t('Cancel account'));
$this
->assertSystemMessageAndEmailTokenReplacement('user_delete', $user_to_delete);
}