class PMIssueTestCase in Drupal PM (Project Management) 8
Same name and namespace in other branches
- 7.3 pmissue/pmissue.test \PMIssueTestCase
- 7.2 pmissue/pmissue.test \PMIssueTestCase
Define a test case for PM Issue.
Hierarchy
- class \PMIssueTestCase extends \DrupalWebTestCase
Expanded class hierarchy of PMIssueTestCase
File
- pmissue/
pmissue.test, line 10 - Test definitions for PM Issue.
View source
class PMIssueTestCase extends DrupalWebTestCase {
/**
* Defines this group of test cases.
*/
public static function getInfo() {
return array(
'name' => t('PM Issue'),
'description' => t('Test the functionality of the PM Issue module'),
'group' => 'Project Management',
);
}
/**
* Provides standard set up for all test cases.
*/
public function setUp() {
// @todo Remove pmorganization dependency.
parent::setUp('pm', 'pmorganization', 'pmissue');
}
/**
* Test of access controls on Issue lists.
*/
public function testpmissueAccess() {
// Anonymous user.
$this
->drupalGet('pm/issues');
$this
->assertResponse(403, 'Access is denied to the anonymous user.');
// Authenticated user.
$authenticated_user = $this
->drupalCreateUser();
$this
->drupalLogin($authenticated_user);
$this
->drupalGet('pm/issues');
$this
->assertResponse(403, 'Access is denied to the authenticated user.');
// Privileged user.
$privileged_user = $this
->drupalCreateUser(array(
'Project Management Issue: access',
));
$this
->drupalLogin($privileged_user);
$this
->drupalGet('pm/issues');
$this
->assertText(t('Issues'), t('Access granted for the privileged user. Correct page has been confirmed by checking that the title is "Issues".'));
}
/**
* Test of Issue node creation.
*/
public function testpmissueCreate() {
// Log in with permission to create test content.
$user = $this
->drupalCreateUser(array(
'create pmissue content',
));
$this
->drupalLogin($user);
// Create test content.
$issue = array(
'title' => $this
->randomName(32),
);
$this
->drupalPost('node/add/pmissue', $issue, t('Save'));
$this
->assertText(t('Issue @title has been created.', array(
'@title' => $issue['title'],
)));
}
/**
* Tests module uninstall path.
*/
public function testpmissueUninstall() {
$module = array(
'pmissue',
);
module_disable($module);
$result = drupal_uninstall_modules($module);
$this
->AssertTrue($result, t('Module successfully uninstalled.'));
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
PMIssueTestCase:: |
public static | function | Defines this group of test cases. | |
PMIssueTestCase:: |
public | function | Provides standard set up for all test cases. | |
PMIssueTestCase:: |
public | function | Test of access controls on Issue lists. | |
PMIssueTestCase:: |
public | function | Test of Issue node creation. | |
PMIssueTestCase:: |
public | function | Tests module uninstall path. |