public function testPopulate() { $gameArray = ['stadium' => 'National', 'date' => '2016-01-01', 'homeClub' => ['name' => 'Team 1'], 'visitor' => ['name' => 'Team 2']]; $array2Object = Array2ObjectBuilder::create()->build(); /** @var Game $game */ $game = $array2Object->createObject(Game::class, $gameArray); static::assertEquals('National', $game->getStadiumName()); static::assertEquals('Team 1', $game->getHomeClub()->getName()); static::assertEquals('Team 2', $game->getVisitor()->getName()); }
/** * @inheritDoc */ public function mockService(array $data) { /** @var MakePayment $payment */ $payment = Array2ObjectBuilder::create()->build()->createObject(MakePayment::class, $data); if (count($payment->getPaymentInputs()[0]->getInputs()) == 0) { $response = $this->loadFixture('MakePaymentPIN.xml'); } else { $response = $this->loadFixture('MakePaymentRTR.xml'); } //TODO: create dynamic response return $response; }
public function testBuild() { //build basic $builder = Array2ObjectBuilder::create(); $array2Object = $builder->build(); static::assertEquals($array2Object->getContext()->getMatcher(), new CamelizeMatcher()); static::assertEquals($array2Object->getContext()->getWriter(), new AccessorWriter()); $parsers = $array2Object->getContext()->getParsers(); foreach ($parsers as $name => $parser) { $builder->disableParser($name); } $builder->setMatcher(new LevenshteinMatcher()); $builder->setWriter(new ReflectionWriter()); $array2Object = $builder->build(); static::assertEquals($array2Object->getContext()->getMatcher(), new LevenshteinMatcher()); static::assertEquals($array2Object->getContext()->getWriter(), new ReflectionWriter()); static::assertEmpty($array2Object->getContext()->getParsers()); }
public function testDeserializeJson() { $json = '{"name":"Big Team","players":[{"name":"Player 1"}]}'; /** @var Team $team */ $team = Array2ObjectBuilder::create()->build()->createObject(Team::class, json_decode($json, true)); static::assertEquals('Big Team', $team->getName()); static::assertEquals('Player 1', $team->getPlayers()[0]->getName()); }
/** * @param array $array * @param QPayApiResponse $responseObject */ private static function populateResponseObject($array, QPayApiResponse $responseObject) { $converter = Array2ObjectBuilder::create()->build(); if (isset($array['Header']['Error'])) { $converter->populate($responseObject, $array['Header']['Error']); } $converter->populate($responseObject, $array); }
/** * {@inheritdoc} */ public function __populate(array $data) { $this->setDate(new \DateTime($data['date'])); $this->setStadiumName($data['stadium']); $array2Object = Array2ObjectBuilder::create()->build(); $this->setHomeClub($array2Object->createObject(Team::class, $data['homeClub'])); $this->setVisitor($array2Object->createObject(Team::class, $data['visitor'])); }