/**
  * @return UserModel
  */
 protected function createUser()
 {
     $user = new UserModel();
     $user->setActive(true);
     $user->setEmail('*****@*****.**');
     $user->setLogin('login');
     $user->setName('name');
     return $user;
 }
 public function testToData()
 {
     $user = new UserModel();
     $user->setId(99);
     $user->setName('user');
     $user->setLogin('user');
     $user->setEmail('*****@*****.**');
     $user->setActive(true);
     $user->setCreAt(new \DateTime());
     $content = new ContentModel();
     $content->setActive(true);
     $content->setTitle('title');
     $content->setCreAt(new \DateTime());
     $content->setCats([1, 2, 4]);
     $content->setAny('any');
     $content->setFloat(12.345);
     $content->setCount(23);
     $content->setUser($user);
     $content->setPrevUsers([$user]);
     $content->setSomeRelIds([12, 31]);
     $similarContent = clone $content;
     $similarContent->setId('content1');
     $similarContent2 = clone $content;
     $similarContent2->setId('content2');
     $content->setSimilarContent([$similarContent, $similarContent2]);
     $this->transformer->getMapsManager()->setMapDir(ContentModel::class, __DIR__ . '/data');
     $this->transformer->getMapsManager()->setMapDir(UserModel::class, __DIR__ . '/data');
     $dto = $this->transformer->getData($content, 'content');
     self::assertInstanceOf('DateTime', $dto['creAt']);
     self::assertEquals('title', $dto['title']);
     self::assertEquals([1, 2, 4], $dto['cats']);
     self::assertEquals('any', $dto['any']);
     self::assertEquals(12.345, $dto['float']);
     self::assertEquals(23, $dto['count']);
     self::assertEquals(99, $dto['user']);
     self::assertEquals([12, 31], $dto['someRelIds']);
     self::assertEquals(['content1', 'content2'], $dto['similarContent']);
     self::assertTrue($dto['active']);
     self::assertCount(1, $dto['prevUsers']);
     self::assertEquals($dto['prevUsers'][0]['id'], $user->getId());
     self::assertEquals($dto['prevUsers'][0]['email'], $user->getEmail());
     self::assertEquals($dto['prevUsers'][0]['name'], $user->getName());
     self::assertEquals($dto['prevUsers'][0]['login'], $user->getLogin());
     self::assertInstanceOf('DateTime', $dto['prevUsers'][0]['creAt']);
 }