annotate core/tests/Drupal/FunctionalTests/Rest/EntityViewDisplayResourceTestBase.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 129ea1e6d783
children
rev   line source
Chris@16 1 <?php
Chris@16 2
Chris@16 3 namespace Drupal\FunctionalTests\Rest;
Chris@16 4
Chris@16 5 use Drupal\Core\Entity\Entity\EntityViewDisplay;
Chris@16 6 use Drupal\node\Entity\NodeType;
Chris@16 7 use Drupal\Tests\rest\Functional\EntityResource\EntityResourceTestBase;
Chris@16 8
Chris@16 9 abstract class EntityViewDisplayResourceTestBase extends EntityResourceTestBase {
Chris@16 10
Chris@16 11 /**
Chris@16 12 * {@inheritdoc}
Chris@16 13 */
Chris@16 14 public static $modules = ['node'];
Chris@16 15
Chris@16 16 /**
Chris@16 17 * {@inheritdoc}
Chris@16 18 */
Chris@16 19 protected static $entityTypeId = 'entity_view_display';
Chris@16 20
Chris@16 21 /**
Chris@16 22 * {@inheritdoc}
Chris@16 23 */
Chris@16 24 protected static $patchProtectedFieldNames = [];
Chris@16 25
Chris@16 26 /**
Chris@16 27 * @var \Drupal\Core\Entity\Display\EntityViewDisplayInterface
Chris@16 28 */
Chris@16 29 protected $entity;
Chris@16 30
Chris@16 31 /**
Chris@16 32 * {@inheritdoc}
Chris@16 33 */
Chris@16 34 protected function setUpAuthorization($method) {
Chris@16 35 $this->grantPermissionsToTestedRole(['administer node display']);
Chris@16 36 }
Chris@16 37
Chris@16 38 /**
Chris@16 39 * {@inheritdoc}
Chris@16 40 */
Chris@16 41 protected function createEntity() {
Chris@16 42 // Create a "Camelids" node type.
Chris@16 43 $camelids = NodeType::create([
Chris@16 44 'name' => 'Camelids',
Chris@16 45 'type' => 'camelids',
Chris@16 46 ]);
Chris@16 47 $camelids->save();
Chris@16 48
Chris@16 49 // Create a view display.
Chris@16 50 $view_display = EntityViewDisplay::create([
Chris@16 51 'targetEntityType' => 'node',
Chris@16 52 'bundle' => 'camelids',
Chris@16 53 'mode' => 'default',
Chris@16 54 'status' => TRUE,
Chris@16 55 ]);
Chris@16 56 $view_display->save();
Chris@16 57
Chris@16 58 return $view_display;
Chris@16 59 }
Chris@16 60
Chris@16 61 /**
Chris@16 62 * {@inheritdoc}
Chris@16 63 */
Chris@16 64 protected function getExpectedNormalizedEntity() {
Chris@16 65 return [
Chris@16 66 'bundle' => 'camelids',
Chris@16 67 'content' => [
Chris@16 68 'links' => [
Chris@16 69 'region' => 'content',
Chris@16 70 'weight' => 100,
Chris@17 71 'settings' => [],
Chris@17 72 'third_party_settings' => [],
Chris@16 73 ],
Chris@16 74 ],
Chris@16 75 'dependencies' => [
Chris@16 76 'config' => [
Chris@16 77 'node.type.camelids',
Chris@16 78 ],
Chris@16 79 'module' => [
Chris@16 80 'user',
Chris@16 81 ],
Chris@16 82 ],
Chris@16 83 'hidden' => [],
Chris@16 84 'id' => 'node.camelids.default',
Chris@16 85 'langcode' => 'en',
Chris@16 86 'mode' => 'default',
Chris@16 87 'status' => TRUE,
Chris@16 88 'targetEntityType' => 'node',
Chris@16 89 'uuid' => $this->entity->uuid(),
Chris@16 90 ];
Chris@16 91 }
Chris@16 92
Chris@16 93 /**
Chris@16 94 * {@inheritdoc}
Chris@16 95 */
Chris@16 96 protected function getNormalizedPostEntity() {
Chris@16 97 // @todo Update in https://www.drupal.org/node/2300677.
Chris@16 98 }
Chris@16 99
Chris@16 100 /**
Chris@16 101 * {@inheritdoc}
Chris@16 102 */
Chris@16 103 protected function getExpectedCacheContexts() {
Chris@16 104 return [
Chris@16 105 'user.permissions',
Chris@16 106 ];
Chris@16 107 }
Chris@16 108
Chris@16 109 /**
Chris@16 110 * {@inheritdoc}
Chris@16 111 */
Chris@16 112 protected function getExpectedUnauthorizedAccessMessage($method) {
Chris@16 113 if ($this->config('rest.settings')->get('bc_entity_resource_permissions')) {
Chris@16 114 return parent::getExpectedUnauthorizedAccessMessage($method);
Chris@16 115 }
Chris@16 116
Chris@16 117 return "The 'administer node display' permission is required.";
Chris@16 118 }
Chris@16 119
Chris@16 120 }