/** * Populates a value into an object-like structure. * * @param Parameter $param The schema that defines how the JSON field is being populated * @param mixed $userValue The user value that is populating a JSON field * * @return array */ private function stockObjectJson(Parameter $param, \stdClass $userValue) : array { $object = []; foreach ($userValue as $key => $val) { $object = $this->stockJson($param->getProperty($key), $val, $object); } return $object; }
public function test_it_gets_property() { $property = new Parameter(['name' => 'metadata', 'properties' => ['type' => 'string', 'prefix' => 'foo']]); $prop = $property->getProperty('metadata'); $this->assertInstanceOf(Parameter::class, $prop); $this->assertEquals('foo', $prop->getPrefix()); }