public function CommentAdminTest::testEditComment in Drupal 8
Same name and namespace in other branches
- 9 core/modules/comment/tests/src/Functional/CommentAdminTest.php \Drupal\Tests\comment\Functional\CommentAdminTest::testEditComment()
Tests editing a comment as an admin.
File
- core/
modules/ comment/ tests/ src/ Functional/ CommentAdminTest.php, line 202
Class
- CommentAdminTest
- Tests comment approval functionality.
Namespace
Drupal\Tests\comment\FunctionalCode
public function testEditComment() {
// Enable anonymous user comments.
user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, [
'access comments',
'post comments',
'skip comment approval',
]);
// Log in as a web user.
$this
->drupalLogin($this->webUser);
// Post a comment.
$comment = $this
->postComment($this->node, $this
->randomMachineName());
$this
->drupalLogout();
// Post anonymous comment.
$this
->drupalLogin($this->adminUser);
// Ensure that we need email id before posting comment.
$this
->setCommentAnonymous('2');
$this
->drupalLogout();
// Post comment with contact info (required).
$author_name = $this
->randomMachineName();
$author_mail = $this
->randomMachineName() . '@example.com';
$anonymous_comment = $this
->postComment($this->node, $this
->randomMachineName(), $this
->randomMachineName(), [
'name' => $author_name,
'mail' => $author_mail,
]);
// Log in as an admin user.
$this
->drupalLogin($this->adminUser);
// Make sure the comment field is not visible when
// the comment was posted by an authenticated user.
$this
->drupalGet('comment/' . $comment
->id() . '/edit');
$this
->assertNoFieldById('edit-mail', $comment
->getAuthorEmail());
// Make sure the comment field is visible when
// the comment was posted by an anonymous user.
$this
->drupalGet('comment/' . $anonymous_comment
->id() . '/edit');
$this
->assertFieldById('edit-mail', $anonymous_comment
->getAuthorEmail());
}