'SimpleTest Example', 'description' => 'Ensure that the simpletest_example content type provided functions properly.', 'group' => 'Examples', ); } /** * setUp() performs any pre-requisite tasks that need to happen. */ public function setUp() { // Enable any modules required for the test. parent::setUp('simpletest_example'); // Create and log in our privileged user. $this->privileged_user = $this->drupalCreateUser( array('create simpletest_example', 'edit own simpletest_example')); $this->drupalLogin($this->privileged_user); } /** * Create a simpletest_example node using the node form. */ public function testSimpleTestExampleCreate() { // Create node to edit. $edit = array(); $edit['title'] = $this->randomName(8); $edit['body'] = $this->randomName(16); $this->drupalPost('node/add/simpletest-example', $edit, t('Save')); $this->assertText(t('simpletest_example page @title has been created.', array('@title' => $edit['title']))); } /** * Create a simpletest_example node and then see if our user can edit it. */ public function testSimpleTestExampleEdit() { $settings = array( 'type' => 'simpletest_example', 'title' => $this->randomName(32), 'body' => $this->randomName(64), ); $node = $this->drupalCreateNode($settings); // For debugging, we might output the node structure with $this->verbose(). // It would only be output if the testing settings had 'verbose' set. $this->verbose('Node created: ' . var_export($node, TRUE)); if (!$this->runningOnTestbot()) { // Make sure we don't get a 401 unauthorized response when editing. $this->drupalGet("node/{$node->nid}/edit"); $this->assertResponse(200, t('User is allowed to edit the content.')); // Looking for title text in the page to determine whether we were // successful opening edit form. $this->assertText(t("@title", array('@title' => $settings['title'])), "Found title in edit form"); } } /** * Detect if we're running on Drupal.org's automated testbot. * * This is used inside the edit test so that the testbot skips intentionally * failing tests. Otherwise, it would mark this module as broken. * * For more information on the testbot, see http://qa.drupal.org/. * * @return boolean * TRUE if running on testbot. */ public function runningOnTestbot() { $testbot_code_directory = "../checkout"; return file_exists($testbot_code_directory); } }