class FieldNormalizerDenormalizeExceptionsTest
Tests the exceptions thrown by FieldNormalizer and FieldItemNormalizer.
@group hal @group legacy
Hierarchy
- class \Drupal\Tests\UnitTestCase uses \Drupal\Tests\Traits\PhpUnitWarnings, \Drupal\Tests\PhpUnitCompatibilityTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait extends \PHPUnit\Framework\TestCase
- class \Drupal\Tests\hal\Unit\FieldNormalizerDenormalizeExceptionsTest extends \Drupal\Tests\UnitTestCase
Expanded class hierarchy of FieldNormalizerDenormalizeExceptionsTest
File
-
core/
modules/ hal/ tests/ src/ Unit/ FieldNormalizerDenormalizeExceptionsTest.php, line 16
Namespace
Drupal\Tests\hal\UnitView source
class FieldNormalizerDenormalizeExceptionsTest extends UnitTestCase {
/**
* Tests that the FieldNormalizer::denormalize() throws proper exceptions.
*
* @covers \Drupal\hal\Normalizer\FieldNormalizer
*
* @dataProvider providerNormalizerDenormalizeExceptions
*/
public function testFieldNormalizerDenormalizeExceptions($context) {
$field_item_normalizer = new FieldNormalizer();
$data = [];
$class = [];
$this->expectException(InvalidArgumentException::class);
$field_item_normalizer->denormalize($data, $class, NULL, $context);
}
/**
* Tests that the FieldItemNormalizer::denormalize() throws proper exceptions.
*
* @covers \Drupal\hal\Normalizer\FieldItemNormalizer
*
* @dataProvider providerNormalizerDenormalizeExceptions
*/
public function testFieldItemNormalizerDenormalizeExceptions($context) {
$field_item_normalizer = new FieldItemNormalizer();
$data = [];
$class = [];
$this->expectException(InvalidArgumentException::class);
$field_item_normalizer->denormalize($data, $class, NULL, $context);
}
/**
* Provides data for field normalization tests.
*
* @return array
* The context of the normalizer.
*/
public function providerNormalizerDenormalizeExceptions() {
$mock = $this->getMockBuilder('\\Drupal\\Core\\Field\\Plugin\\DataType\\FieldItem')
->addMethods([
'getParent',
])
->getMock();
$mock->expects($this->any())
->method('getParent')
->willReturn(NULL);
return [
[
[],
],
[
[
'target_instance' => $mock,
],
],
];
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.