public function testPrependParsers() { $context = new Array2ObjectContext(); $parsers = [new StringParser(), new IntegerParser()]; $context->setParsers($parsers); $context->prependParser(new IntegerParser()); static::assertEquals(['integer' => new IntegerParser(), 'string' => new StringParser()], $context->getParsers()); }
public function testParse() { $context = new Array2ObjectContext(); $context->setWriter(new AccessorWriter()); $context->setMatcher(new CamelizeMatcher()); $context->setParsers([new StringParser()]); $parser = new ObjectParser($context); $object = new Team(); $property = new \ReflectionProperty(get_class($object), 'name'); /** @var Team $team */ $team = $parser->toObjectValue(['name' => 'New Name'], 'Team', $property, $object); static::assertInstanceOf(Team::class, $team); static::assertEquals('New Name', $team->getName()); }