public function testReturnsUniqueValueIfUniqueFlagsFound()
{
$fixture = new SimpleFixture('dummy_id', 'Dummy', SpecificationBagFactory::create());
$flags = (new FlagBag(''))->withFlag(new UniqueFlag());
$value = 'foo';
$decoratedDenormalizerProphecy = $this->prophesize(ValueDenormalizerInterface::class);
$decoratedDenormalizerProphecy->denormalize($fixture, $flags, $value)->willReturn('denormalized_value');
/** @var ValueDenormalizerInterface $decoratedDenormalizer */
$decoratedDenormalizer = $decoratedDenormalizerProphecy->reveal();
$denormalizer = new UniqueValueDenormalizer($decoratedDenormalizer);
$result = $denormalizer->denormalize($fixture, $flags, $value);
$this->assertInstanceOf(UniqueValue::class, $result);
$this->stringContains('dummy_id', $result->getId());
$this->assertEquals('denormalized_value', $result->getValue());
$decoratedDenormalizerProphecy->denormalize(Argument::cetera())->shouldHaveBeenCalledTimes(1);
}