Issue #2843786 by arshadcn: EntityResource: Provide comprehensive test coverage for ImageStyle entity
parent
488a6b142a
commit
5955462816
|
@ -30,6 +30,9 @@ reset-form:
|
||||||
cancel-form:
|
cancel-form:
|
||||||
uri: https://drupal.org/link-relations/cancel-form
|
uri: https://drupal.org/link-relations/cancel-form
|
||||||
description: A form where a resource of this type can be canceled.
|
description: A form where a resource of this type can be canceled.
|
||||||
|
flush-form:
|
||||||
|
uri: https://drupal.org/link-relations/flush-form
|
||||||
|
description: A form where a resource of this type can be flushed.
|
||||||
|
|
||||||
# All registered relation types.
|
# All registered relation types.
|
||||||
# See https://tools.ietf.org/html/rfc5988#section-4.1.
|
# See https://tools.ietf.org/html/rfc5988#section-4.1.
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Drupal\Tests\hal\Functional\EntityResource\ImageStyle;
|
||||||
|
|
||||||
|
use Drupal\Tests\rest\Functional\AnonResourceTestTrait;
|
||||||
|
use Drupal\Tests\rest\Functional\EntityResource\ImageStyle\ImageStyleResourceTestBase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group rest
|
||||||
|
*/
|
||||||
|
class ImageStyleHalJsonAnonTest extends ImageStyleResourceTestBase {
|
||||||
|
|
||||||
|
use AnonResourceTestTrait;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public static $modules = ['hal'];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $format = 'hal_json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $mimeType = 'application/hal+json';
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,35 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Drupal\Tests\hal\Functional\EntityResource\ImageStyle;
|
||||||
|
|
||||||
|
use Drupal\Tests\rest\Functional\BasicAuthResourceTestTrait;
|
||||||
|
use Drupal\Tests\rest\Functional\EntityResource\ImageStyle\ImageStyleResourceTestBase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group rest
|
||||||
|
*/
|
||||||
|
class ImageStyleHalJsonBasicAuthTest extends ImageStyleResourceTestBase {
|
||||||
|
|
||||||
|
use BasicAuthResourceTestTrait;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public static $modules = ['hal', 'basic_auth'];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $format = 'hal_json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $mimeType = 'application/hal+json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $auth = 'basic_auth';
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,35 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Drupal\Tests\hal\Functional\EntityResource\ImageStyle;
|
||||||
|
|
||||||
|
use Drupal\Tests\rest\Functional\CookieResourceTestTrait;
|
||||||
|
use Drupal\Tests\rest\Functional\EntityResource\ImageStyle\ImageStyleResourceTestBase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group rest
|
||||||
|
*/
|
||||||
|
class ImageStyleHalJsonCookieTest extends ImageStyleResourceTestBase {
|
||||||
|
|
||||||
|
use CookieResourceTestTrait;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public static $modules = ['hal'];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $format = 'hal_json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $mimeType = 'application/hal+json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $auth = 'cookie';
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,24 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Drupal\Tests\rest\Functional\EntityResource\ImageStyle;
|
||||||
|
|
||||||
|
use Drupal\Tests\rest\Functional\AnonResourceTestTrait;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group rest
|
||||||
|
*/
|
||||||
|
class ImageStyleJsonAnonTest extends ImageStyleResourceTestBase {
|
||||||
|
|
||||||
|
use AnonResourceTestTrait;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $format = 'json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $mimeType = 'application/json';
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Drupal\Tests\rest\Functional\EntityResource\ImageStyle;
|
||||||
|
|
||||||
|
use Drupal\Tests\rest\Functional\BasicAuthResourceTestTrait;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group rest
|
||||||
|
*/
|
||||||
|
class ImageStyleJsonBasicAuthTest extends ImageStyleResourceTestBase {
|
||||||
|
|
||||||
|
use BasicAuthResourceTestTrait;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public static $modules = ['basic_auth'];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $format = 'json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $mimeType = 'application/json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $auth = 'basic_auth';
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Drupal\Tests\rest\Functional\EntityResource\ImageStyle;
|
||||||
|
|
||||||
|
use Drupal\Tests\rest\Functional\CookieResourceTestTrait;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group rest
|
||||||
|
*/
|
||||||
|
class ImageStyleJsonCookieTest extends ImageStyleResourceTestBase {
|
||||||
|
|
||||||
|
use CookieResourceTestTrait;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $format = 'json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $mimeType = 'application/json';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $auth = 'cookie';
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,113 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Drupal\Tests\rest\Functional\EntityResource\ImageStyle;
|
||||||
|
|
||||||
|
use Drupal\image\Entity\ImageStyle;
|
||||||
|
use Drupal\Tests\rest\Functional\EntityResource\EntityResourceTestBase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ResourceTestBase for ImageStyle entity.
|
||||||
|
*/
|
||||||
|
abstract class ImageStyleResourceTestBase extends EntityResourceTestBase {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public static $modules = ['image'];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected static $entityTypeId = 'image_style';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The ImageStyle entity.
|
||||||
|
*
|
||||||
|
* @var \Drupal\image\ImageStyleInterface
|
||||||
|
*/
|
||||||
|
protected $entity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The effect UUID.
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
protected $effectUuid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected function setUpAuthorization($method) {
|
||||||
|
$this->grantPermissionsToTestedRole(['administer image styles']);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected function createEntity() {
|
||||||
|
// Create a "Camelids" image style.
|
||||||
|
$camelids = ImageStyle::create([
|
||||||
|
'name' => 'camelids',
|
||||||
|
'label' => 'Camelids',
|
||||||
|
]);
|
||||||
|
|
||||||
|
// Add an image effect.
|
||||||
|
$effect = [
|
||||||
|
'id' => 'image_scale_and_crop',
|
||||||
|
'data' => [
|
||||||
|
'width' => 120,
|
||||||
|
'height' => 121,
|
||||||
|
],
|
||||||
|
'weight' => 0,
|
||||||
|
];
|
||||||
|
$this->effectUuid = $camelids->addImageEffect($effect);
|
||||||
|
|
||||||
|
$camelids->save();
|
||||||
|
|
||||||
|
return $camelids;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected function getExpectedNormalizedEntity() {
|
||||||
|
return [
|
||||||
|
'dependencies' => [],
|
||||||
|
'effects' => [
|
||||||
|
$this->effectUuid => [
|
||||||
|
'uuid' => $this->effectUuid,
|
||||||
|
'id' => 'image_scale_and_crop',
|
||||||
|
'weight' => 0,
|
||||||
|
'data' => [
|
||||||
|
'width' => 120,
|
||||||
|
'height' => 121,
|
||||||
|
],
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'label' => 'Camelids',
|
||||||
|
'langcode' => 'en',
|
||||||
|
'name' => 'camelids',
|
||||||
|
'status' => TRUE,
|
||||||
|
'uuid' => $this->entity->uuid(),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected function getNormalizedPostEntity() {
|
||||||
|
// @todo Update in https://www.drupal.org/node/2300677.
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
protected function getExpectedUnauthorizedAccessMessage($method) {
|
||||||
|
if ($this->config('rest.settings')->get('bc_entity_resource_permissions')) {
|
||||||
|
return parent::getExpectedUnauthorizedAccessMessage($method);
|
||||||
|
}
|
||||||
|
|
||||||
|
return "The 'administer image styles' permission is required.";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue