/** * map data * @param mixed $data * @return mixed **/ public function mapData($data, $singular = false) { // init return variable $return = false; if ($data) { // if singular response required if ($singular) { // instantiate new object $return = new Cd(); // map data $return->setId($data['id'])->setSlug($data['slug'])->setName($data['name']); } else { // array to map, not singular $return = array(); foreach ($data as $key => $entity) { $return[$key] = new Cd(); $return[$key]->setId($entity['id'])->setSlug($entity['slug'])->setName($entity['name']); } } } return $return; }
/** * test save * @return void **/ public function testSave() { // init factory $factory = new Factory($this->dsn); // call repo $repo = $factory->fetch('SuperSimple\\ORM\\Tests\\Lib:Cd'); $cd = new Cd(); $cd->setSlug('test-cd-3')->setName('Test CD 3'); $id = $repo->persist($cd); // fetch the new object $new = $repo->find($id); $this->assertInstanceOf('SuperSimple\\ORM\\Tests\\Lib\\Entity\\Cd', $new); $this->assertEquals($new->getName(), $cd->getName()); $this->assertEquals($new->getSlug(), $cd->getSlug()); }