Mercurial > hg > cmmr2012-drupal-site
diff core/modules/jsonapi/tests/src/Functional/ItemTest.php @ 5:12f9dff5fda9 tip
Update to Drupal core 8.7.1
author | Chris Cannam |
---|---|
date | Thu, 09 May 2019 15:34:47 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/core/modules/jsonapi/tests/src/Functional/ItemTest.php Thu May 09 15:34:47 2019 +0100 @@ -0,0 +1,175 @@ +<?php + +namespace Drupal\Tests\jsonapi\Functional; + +use Drupal\aggregator\Entity\Feed; +use Drupal\aggregator\Entity\Item; +use Drupal\Tests\rest\Functional\BcTimestampNormalizerUnixTestTrait; + +/** + * JSON:API integration test for the "Item" content entity type. + * + * @group jsonapi + */ +class ItemTest extends ResourceTestBase { + + use BcTimestampNormalizerUnixTestTrait; + + /** + * {@inheritdoc} + */ + public static $modules = ['aggregator']; + + /** + * {@inheritdoc} + */ + protected static $entityTypeId = 'aggregator_item'; + + /** + * {@inheritdoc} + */ + protected static $resourceTypeName = 'aggregator_item--aggregator_item'; + + /** + * {@inheritdoc} + * + * @var \Drupal\aggregator\ItemInterface + */ + protected $entity; + + /** + * {@inheritdoc} + */ + protected static $patchProtectedFieldNames = []; + + /** + * {@inheritdoc} + */ + protected function setUpAuthorization($method) { + switch ($method) { + case 'GET': + $this->grantPermissionsToTestedRole(['access news feeds']); + break; + + case 'POST': + case 'PATCH': + case 'DELETE': + $this->grantPermissionsToTestedRole(['administer news feeds']); + break; + } + } + + /** + * {@inheritdoc} + */ + protected function createEntity() { + // Create a "Camelids" feed. + $feed = Feed::create([ + 'title' => 'Camelids', + 'url' => 'https://groups.drupal.org/not_used/167169', + 'refresh' => 900, + 'checked' => 1389919932, + 'description' => 'Drupal Core Group feed', + ]); + $feed->save(); + + // Create a "Llama" item. + $item = Item::create(); + $item->setTitle('Llama') + ->setFeedId($feed->id()) + ->setLink('https://www.drupal.org/') + ->setPostedTime(123456789) + ->save(); + + return $item; + } + + /** + * {@inheritdoc} + */ + protected function createAnotherEntity($key) { + $duplicate = $this->getEntityDuplicate($this->entity, $key); + $duplicate->setLink('https://www.example.org/'); + $duplicate->save(); + return $duplicate; + } + + /** + * {@inheritdoc} + */ + protected function getExpectedDocument() { + return []; + } + + /** + * {@inheritdoc} + */ + protected function getPostDocument() { + return []; + } + + /** + * {@inheritdoc} + */ + protected function getExpectedUnauthorizedAccessMessage($method) { + switch ($method) { + case 'GET': + return "The 'access news feeds' permission is required."; + + case 'POST': + case 'PATCH': + case 'DELETE': + return "The 'administer news feeds' permission is required."; + } + } + + /** + * {@inheritdoc} + */ + public function testGetIndividual() { + $this->markTestSkipped('Remove this override in https://www.drupal.org/project/drupal/issues/2149851'); + } + + /** + * {@inheritdoc} + */ + public function testCollection() { + $this->markTestSkipped('Remove this override in https://www.drupal.org/project/drupal/issues/2149851'); + } + + /** + * {@inheritdoc} + */ + public function testRelated() { + $this->markTestSkipped('Remove this override in https://www.drupal.org/project/drupal/issues/2149851'); + } + + /** + * {@inheritdoc} + */ + public function testRelationships() { + $this->markTestSkipped('Remove this override in https://www.drupal.org/project/drupal/issues/2149851'); + } + + /** + * {@inheritdoc} + */ + public function testPostIndividual() { + $this->markTestSkipped('Remove this override in https://www.drupal.org/project/drupal/issues/2149851'); + } + + /** + * {@inheritdoc} + */ + public function testPatchIndividual() { + $this->markTestSkipped('Remove this override in https://www.drupal.org/project/drupal/issues/2149851'); + } + + /** + * {@inheritdoc} + */ + public function testDeleteIndividual() { + $this->markTestSkipped('Remove this override in https://www.drupal.org/project/drupal/issues/2149851'); + } + +}