protected function ForumBlockTest::createForumTopics in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/forum/src/Tests/ForumBlockTest.php \Drupal\forum\Tests\ForumBlockTest::createForumTopics()
Creates a forum topic.
Return value
string The title of the newly generated topic.
2 calls to ForumBlockTest::createForumTopics()
- ForumBlockTest::testActiveForumTopicsBlock in core/modules/ forum/ src/ Tests/ ForumBlockTest.php 
- Tests the "Active forum topics" block.
- ForumBlockTest::testNewForumTopicsBlock in core/modules/ forum/ src/ Tests/ ForumBlockTest.php 
- Tests the "New forum topics" block.
File
- core/modules/ forum/ src/ Tests/ ForumBlockTest.php, line 154 
- Contains \Drupal\forum\Tests\ForumBlockTest.
Class
- ForumBlockTest
- Tests the forum blocks.
Namespace
Drupal\forum\TestsCode
protected function createForumTopics($count = 5) {
  $topics = array();
  $date = new DrupalDateTime();
  $date
    ->modify('-24 hours');
  for ($index = 0; $index < $count; $index++) {
    // Generate a random subject/body.
    $title = $this
      ->randomMachineName(20);
    $body = $this
      ->randomMachineName(200);
    // Forum posts are ordered by timestamp, so force a unique timestamp by
    // changing the date.
    $date
      ->modify('+1 minute');
    $edit = array(
      'title[0][value]' => $title,
      'body[0][value]' => $body,
      // Forum posts are ordered by timestamp, so force a unique timestamp by
      // adding the index.
      'created[0][value][date]' => $date
        ->format('Y-m-d'),
      'created[0][value][time]' => $date
        ->format('H:i:s'),
    );
    // Create the forum topic, preselecting the forum ID via a URL parameter.
    $this
      ->drupalPostForm('node/add/forum', $edit, t('Save and publish'), array(
      'query' => array(
        'forum_id' => 1,
      ),
    ));
    $topics[] = $title;
  }
  return $topics;
}