setValue() публичный Метод

public setValue ( &$objectOrArray, $propertyPath, $value )
Пример #1
0
 public function testSetValueWithTheDecoratedAccessorWhenTheObjectIsNotAnInstanceOfStdClass()
 {
     $object = new DummyWithPublicProperty();
     $property = 'val';
     $value = 'bar';
     $expected = new DummyWithPublicProperty();
     $expected->val = 'bar';
     $decoratedAccessorProphecy = $this->prophesize(PropertyAccessorInterface::class);
     $decoratedAccessorProphecy->setValue($object, $property, $value)->will(function ($args) {
         $args[0]->{$args[1]} = $args[2];
     });
     /** @var PropertyAccessorInterface $decoratedAccessor */
     $decoratedAccessor = $decoratedAccessorProphecy->reveal();
     $accessor = new StdPropertyAccessor($decoratedAccessor);
     $accessor->setValue($object, $property, $value);
     $this->assertEquals($expected, $object);
     $decoratedAccessorProphecy->setValue(Argument::cetera())->shouldHaveBeenCalledTimes(1);
 }