ApiPlatform\Core\Tests\Bridge\Symfony\Validator\Metadata\Property\ValidatorPropertyMetadataFactoryTest::testCreateWithPropertyWithRightValidationGroupsAndRequiredConstraints PHP Method

testCreateWithPropertyWithRightValidationGroupsAndRequiredConstraints() public method

    public function testCreateWithPropertyWithRightValidationGroupsAndRequiredConstraints()
    {
        $propertyMetadata = new PropertyMetadata(null, 'A dummy group', true, true, null, null, null, false);
        $expectedPropertyMetadata = $propertyMetadata->withRequired(true);
        $decoratedPropertyMetadataFactory = $this->prophesize(PropertyMetadataFactoryInterface::class);
        $decoratedPropertyMetadataFactory->create(DummyValidatedEntity::class, 'dummyGroup', ['validation_groups' => ['dummy']])->willReturn($propertyMetadata)->shouldBeCalled();
        $validatorMetadataFactory = $this->prophesize(MetadataFactoryInterface::class);
        $validatorMetadataFactory->getMetadataFor(DummyValidatedEntity::class)->willReturn($this->validatorClassMetadata)->shouldBeCalled();
        $validatorPropertyMetadataFactory = new ValidatorPropertyMetadataFactory($validatorMetadataFactory->reveal(), $decoratedPropertyMetadataFactory->reveal());
        $resultedPropertyMetadata = $validatorPropertyMetadataFactory->create(DummyValidatedEntity::class, 'dummyGroup', ['validation_groups' => ['dummy']]);
        $this->assertInstanceOf(PropertyMetadata::class, $resultedPropertyMetadata);
        $this->assertEquals($expectedPropertyMetadata, $resultedPropertyMetadata);
    }