Mercurial > hg > isophonics-drupal-site
view core/modules/comment/tests/src/Functional/CommentNodeAccessTest.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line source
<?php namespace Drupal\Tests\comment\Functional; use Drupal\comment\CommentManagerInterface; /** * Tests comments with node access. * * Verifies there is no PostgreSQL error when viewing a node with threaded * comments (a comment and a reply), if a node access module is in use. * * @group comment */ class CommentNodeAccessTest extends CommentTestBase { /** * Modules to install. * * @var array */ public static $modules = ['node_access_test']; protected function setUp() { parent::setUp(); node_access_rebuild(); // Re-create user. $this->webUser = $this->drupalCreateUser([ 'access comments', 'post comments', 'create article content', 'edit own comments', 'node test view', 'skip comment approval', ]); // Set the author of the created node to the web_user uid. $this->node->setOwnerId($this->webUser->id())->save(); } /** * Test that threaded comments can be viewed. */ public function testThreadedCommentView() { // Set comments to have subject required and preview disabled. $this->drupalLogin($this->adminUser); $this->setCommentPreview(DRUPAL_DISABLED); $this->setCommentForm(TRUE); $this->setCommentSubject(TRUE); $this->setCommentSettings('default_mode', CommentManagerInterface::COMMENT_MODE_THREADED, 'Comment paging changed.'); $this->drupalLogout(); // Post comment. $this->drupalLogin($this->webUser); $comment_text = $this->randomMachineName(); $comment_subject = $this->randomMachineName(); $comment = $this->postComment($this->node, $comment_text, $comment_subject); $this->assertTrue($this->commentExists($comment), 'Comment found.'); // Check comment display. $this->drupalGet('node/' . $this->node->id()); $this->assertText($comment_subject, 'Individual comment subject found.'); $this->assertText($comment_text, 'Individual comment body found.'); // Reply to comment, creating second comment. $this->drupalGet('comment/reply/node/' . $this->node->id() . '/comment/' . $comment->id()); $reply_text = $this->randomMachineName(); $reply_subject = $this->randomMachineName(); $reply = $this->postComment(NULL, $reply_text, $reply_subject, TRUE); $this->assertTrue($this->commentExists($reply, TRUE), 'Reply found.'); // Go to the node page and verify comment and reply are visible. $this->drupalGet('node/' . $this->node->id()); $this->assertText($comment_text); $this->assertText($comment_subject); $this->assertText($reply_text); $this->assertText($reply_subject); } }