public function ForumTest::testAddOrphanTopic in Drupal 9
Same name and namespace in other branches
- 8 core/modules/forum/tests/src/Functional/ForumTest.php \Drupal\Tests\forum\Functional\ForumTest::testAddOrphanTopic()
- 10 core/modules/forum/tests/src/Functional/ForumTest.php \Drupal\Tests\forum\Functional\ForumTest::testAddOrphanTopic()
Tests that forum nodes can't be added without a parent.
Verifies that forum nodes are not created without choosing "forum" from the select list.
File
- core/
modules/ forum/ tests/ src/ Functional/ ForumTest.php, line 276
Class
- ForumTest
- Tests for forum.module.
Namespace
Drupal\Tests\forum\FunctionalCode
public function testAddOrphanTopic() {
// Must remove forum topics to test creating orphan topics.
$vid = $this
->config('forum.settings')
->get('vocabulary');
$tids = \Drupal::entityQuery('taxonomy_term')
->accessCheck(FALSE)
->condition('vid', $vid)
->execute();
$term_storage = \Drupal::entityTypeManager()
->getStorage('taxonomy_term');
$terms = $term_storage
->loadMultiple($tids);
$term_storage
->delete($terms);
// Create an orphan forum item.
$edit = [];
$edit['title[0][value]'] = $this
->randomMachineName(10);
$edit['body[0][value]'] = $this
->randomMachineName(120);
$this
->drupalLogin($this->adminUser);
$this
->drupalGet('node/add/forum');
$this
->submitForm($edit, 'Save');
$nid_count = $this->container
->get('entity_type.manager')
->getStorage('node')
->getQuery()
->accessCheck(FALSE)
->count()
->execute();
$this
->assertEquals(0, $nid_count, 'A forum node was not created when missing a forum vocabulary.');
// Reset the defaults for future tests.
\Drupal::service('module_installer')
->install([
'forum',
]);
}