You are here

protected function EntityResourceTestBase::getEntityResourcePostUrl in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/rest/tests/src/Functional/EntityResource/EntityResourceTestBase.php \Drupal\Tests\rest\Functional\EntityResource\EntityResourceTestBase::getEntityResourcePostUrl()
  2. 10 core/modules/rest/tests/src/Functional/EntityResource/EntityResourceTestBase.php \Drupal\Tests\rest\Functional\EntityResource\EntityResourceTestBase::getEntityResourcePostUrl()

Gets an entity resource's POST URL.

Return value

\Drupal\Core\Url The URL to POST to.

1 call to EntityResourceTestBase::getEntityResourcePostUrl()
EntityResourceTestBase::testPost in core/modules/rest/tests/src/Functional/EntityResource/EntityResourceTestBase.php
Tests a POST request for an entity, plus edge cases to ensure good DX.

File

core/modules/rest/tests/src/Functional/EntityResource/EntityResourceTestBase.php, line 1243

Class

EntityResourceTestBase
Even though there is the generic EntityResource, it's necessary for every entity type to have its own test, because they each have different fields, validation constraints, et cetera. It's not because the generic case works, that every case…

Namespace

Drupal\Tests\rest\Functional\EntityResource

Code

protected function getEntityResourcePostUrl() {
  $has_create_url = $this->entity
    ->hasLinkTemplate('create');
  return $has_create_url ? Url::fromUri('internal:' . $this->entity
    ->getEntityType()
    ->getLinkTemplate('create')) : Url::fromUri('base:entity/' . static::$entityTypeId);
}