public function testUsesDecoratedAccessorToDertermineIfPropertyIsReadbleIfObjectIsNotAnStdClassInstance()
{
$object = new DummyWithPublicProperty();
$property = 'val';
$decoratedAccessorProphecy = $this->prophesize(PropertyAccessorInterface::class);
$decoratedAccessorProphecy->isReadable($object, $property)->willReturn($expected = true);
/** @var PropertyAccessorInterface $decoratedAccessor */
$decoratedAccessor = $decoratedAccessorProphecy->reveal();
$accessor = new StdPropertyAccessor($decoratedAccessor);
$actual = $accessor->isReadable($object, $property);
$this->assertEquals($expected, $actual);
$decoratedAccessorProphecy->isReadable(Argument::cetera())->shouldHaveBeenCalledTimes(1);
}