Issue #2975217 by Sam152, Berdir: Update the default comment entity owner to the current user

8.7.x
Alex Pott 2018-09-19 19:34:30 +01:00
parent d3784a1300
commit 0b8908a1d2
No known key found for this signature in database
GPG Key ID: 31905460D4A69276
3 changed files with 24 additions and 8 deletions

View File

@ -319,13 +319,6 @@ class Comment extends ContentEntityBase implements CommentInterface {
return $fields;
}
/**
* {@inheritdoc}
*/
public static function getDefaultEntityOwner() {
return 0;
}
/**
* {@inheritdoc}
*/

View File

@ -314,7 +314,7 @@ abstract class CommentResourceTestBase extends EntityResourceTestBase {
// $this->assertResourceErrorResponse(422, "Unprocessable Entity: validation failed.\nentity_type: This value should not be null.\n", $response);
// DX: 422 when missing 'entity_type' field.
$request_options[RequestOptions::BODY] = $this->serializer->encode(array_diff_key($this->getNormalizedPostEntity(), ['field_name' => TRUE]), static::$format);
$request_options[RequestOptions::BODY] = $this->serializer->encode(array_diff_key($this->getNormalizedPostEntity(), ['entity_type' => TRUE]), static::$format);
$response = $this->request('POST', $url, $request_options);
// @todo Uncomment, remove next 2 lines in https://www.drupal.org/node/2820364.
$this->assertSame(500, $response->getStatusCode());

View File

@ -2,6 +2,7 @@
namespace Drupal\Tests\comment\Kernel;
use Drupal\comment\Entity\Comment;
use Drupal\comment\Entity\CommentType;
use Drupal\Core\Database\Database;
use Drupal\Core\Entity\Entity\EntityViewDisplay;
@ -9,6 +10,7 @@ use Drupal\Core\Entity\Entity\EntityViewMode;
use Drupal\field\Entity\FieldConfig;
use Drupal\field\Entity\FieldStorageConfig;
use Drupal\KernelTests\KernelTestBase;
use Drupal\Tests\user\Traits\UserCreationTrait;
/**
* Tests integration of comment with other components.
@ -17,6 +19,8 @@ use Drupal\KernelTests\KernelTestBase;
*/
class CommentIntegrationTest extends KernelTestBase {
use UserCreationTrait;
/**
* {@inheritdoc}
*/
@ -31,11 +35,13 @@ class CommentIntegrationTest extends KernelTestBase {
$this->installEntitySchema('user');
$this->installEntitySchema('comment');
$this->installSchema('dblog', ['watchdog']);
$this->installSchema('system', ['sequences']);
// Create a new 'comment' comment-type.
CommentType::create([
'id' => 'comment',
'label' => $this->randomString(),
'target_entity_type_id' => 'entity_test',
])->save();
}
@ -134,4 +140,21 @@ class CommentIntegrationTest extends KernelTestBase {
$this->assertTrue($host_display->get('hidden')[$field_name]);
}
/**
* Test the default owner of comment entities.
*/
public function testCommentDefaultOwner() {
$comment = Comment::create([
'comment_type' => 'comment',
]);
$this->assertEquals(0, $comment->getOwnerId());
$user = $this->createUser();
$this->container->get('current_user')->setAccount($user);
$comment = Comment::create([
'comment_type' => 'comment',
]);
$this->assertEquals($user->id(), $comment->getOwnerId());
}
}