public function EntityResourceValidationTraitTest::testFailedValidate in Drupal 8
Same name and namespace in other branches
- 9 core/modules/rest/tests/src/Unit/EntityResourceValidationTraitTest.php \Drupal\Tests\rest\Unit\EntityResourceValidationTraitTest::testFailedValidate()
@covers ::validate
File
- core/
modules/ rest/ tests/ src/ Unit/ EntityResourceValidationTraitTest.php, line 41
Class
- EntityResourceValidationTraitTest
- @group rest @coversDefaultClass \Drupal\rest\Plugin\rest\resource\EntityResourceValidationTrait
Namespace
Drupal\Tests\rest\UnitCode
public function testFailedValidate() {
$violation1 = $this
->prophesize(ConstraintViolationInterface::class);
$violation1
->getPropertyPath()
->willReturn('property_path');
$violation1
->getMessage()
->willReturn('message');
$violation2 = $this
->prophesize(ConstraintViolationInterface::class);
$violation2
->getPropertyPath()
->willReturn('property_path');
$violation2
->getMessage()
->willReturn('message');
$entity = $this
->prophesize(User::class);
$violations = $this
->getMockBuilder(EntityConstraintViolationList::class)
->setConstructorArgs([
$entity
->reveal(),
[
$violation1
->reveal(),
$violation2
->reveal(),
],
])
->setMethods([
'filterByFieldAccess',
])
->getMock();
$violations
->expects($this
->once())
->method('filterByFieldAccess')
->will($this
->returnValue([]));
$entity
->validate()
->willReturn($violations);
$trait = new EntityResourceValidationTraitTestClass();
$method = new \ReflectionMethod($trait, 'validate');
$method
->setAccessible(TRUE);
$this
->expectException(UnprocessableEntityHttpException::class);
$method
->invoke($trait, $entity
->reveal());
}