
didn't repatched it for email notification since rules hooks semmes to be added to the module added the old patch for memory
93 lines
2.9 KiB
Plaintext
93 lines
2.9 KiB
Plaintext
<?php
|
|
|
|
/**
|
|
* @file
|
|
* Tests for Feedback module.
|
|
*/
|
|
|
|
/**
|
|
* Test basic Feedback functionality.
|
|
*/
|
|
class FeedbackTestCase extends DrupalWebTestCase {
|
|
protected $profile = 'testing';
|
|
|
|
public static function getInfo() {
|
|
return array(
|
|
'name' => 'Feedback functionality',
|
|
'description' => 'Tests basic Feedback module functionality.',
|
|
'group' => 'Feedback',
|
|
);
|
|
}
|
|
|
|
function setUp() {
|
|
// @todo Remove soft-dependency on Block.
|
|
parent::setUp(array('block', 'feedback'));
|
|
|
|
$this->admin_user = $this->drupalCreateUser(array('access feedback form', 'view feedback messages', 'administer feedback'));
|
|
$this->web_user = $this->drupalCreateUser(array('access feedback form'));
|
|
$this->drupalLogin($this->web_user);
|
|
}
|
|
|
|
/**
|
|
* Test a basic feedback message.
|
|
*/
|
|
function testFeedbackMessage() {
|
|
$message = $this->randomString();
|
|
$edit = array(
|
|
'message' => $message,
|
|
);
|
|
$this->drupalPost('node', $edit, t('Send feedback'));
|
|
|
|
// Verify the message was recorded.
|
|
$this->drupalLogin($this->admin_user);
|
|
$this->drupalGet('admin/reports/feedback');
|
|
$this->assertRaw(check_plain($message), t('Message found.'));
|
|
$this->assertText('node', t('Originating system path found.'));
|
|
$this->assertLinkByHref(url('node', array('absolute' => TRUE)), 0, t('Originating absolute URL found.'));
|
|
|
|
// Verify that we can process the message.
|
|
$edit = array(
|
|
'feedback-messages[0][1]' => TRUE,
|
|
);
|
|
$this->drupalPost(NULL, $edit, t('Submit'));
|
|
$this->assertFieldByName('feedback-messages[1][1]', 1, t('Processed message found.'));
|
|
}
|
|
|
|
/**
|
|
* Test visibility settings.
|
|
*/
|
|
function testFeedbackVisibility() {
|
|
$this->drupalLogin($this->admin_user);
|
|
$this->drupalGet('user');
|
|
$this->assertRaw('<span class="feedback-link">' . t('Feedback') . '</span>', t('Feedback form shown.'));
|
|
$edit = array(
|
|
'feedback_excluded_paths' => 'user*',
|
|
);
|
|
$this->drupalPost('admin/config/user-interface/feedback', $edit, t('Save configuration'));
|
|
$this->drupalGet('user');
|
|
$this->assertNoRaw('<span class="feedback-link">' . t('Feedback') . '</span>', t('Feedback form not shown.'));
|
|
}
|
|
|
|
/**
|
|
* Test feedback deletion.
|
|
*/
|
|
function testFeedbackDelete() {
|
|
$this->drupalLogin($this->admin_user);
|
|
$message = $this->randomString();
|
|
$edit = array(
|
|
'message' => $message,
|
|
);
|
|
$this->drupalPost('node', $edit, t('Send feedback'));
|
|
|
|
// Verify a delete link is shown.
|
|
$this->drupalGet('admin/reports/feedback');
|
|
$this->assertLinkByHref('admin/reports/feedback/1/delete');
|
|
|
|
// Verify deletion.
|
|
$this->drupalPost('admin/reports/feedback/1/delete', array(), t('Delete'));
|
|
$this->assertRaw(t('The feedback entry was deleted'), t('Feedback deletion message shown.'));
|
|
$this->assertNoLinkByHref('admin/reports/feedback/1/delete');
|
|
$this->assertNoRaw(check_plain($message), t('Message not found.'));
|
|
}
|
|
}
|