PersonalTranslationTest.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <?php
  2. namespace Gedmo\Translatable;
  3. use Doctrine\Common\EventManager;
  4. use Tool\BaseTestCaseORM;
  5. use Translatable\Fixture\Personal\Article;
  6. use Translatable\Fixture\Personal\PersonalArticleTranslation;
  7. /**
  8. * These are tests for translatable behavior
  9. *
  10. * @author Gediminas Morkevicius <gediminas.morkevicius@gmail.com>
  11. * @package Gedmo.Translatable
  12. * @link http://www.gediminasm.org
  13. * @license MIT License (http://www.opensource.org/licenses/mit-license.php)
  14. */
  15. class PersonalTranslationTest extends BaseTestCaseORM
  16. {
  17. const ARTICLE = 'Translatable\Fixture\Personal\Article';
  18. const TRANSLATION = 'Translatable\Fixture\Personal\PersonalArticleTranslation';
  19. private $translatableListener;
  20. protected function setUp()
  21. {
  22. parent::setUp();
  23. $evm = new EventManager;
  24. $this->translatableListener = new TranslatableListener();
  25. $this->translatableListener->setTranslatableLocale('en');
  26. $this->translatableListener->setDefaultLocale('en');
  27. $evm->addEventSubscriber($this->translatableListener);
  28. $conn = array(
  29. 'driver' => 'pdo_mysql',
  30. 'host' => '127.0.0.1',
  31. 'dbname' => 'test',
  32. 'user' => 'root',
  33. 'password' => 'nimda'
  34. );
  35. //$this->getMockCustomEntityManager($conn, $evm);
  36. $this->getMockSqliteEntityManager($evm);
  37. }
  38. /**
  39. * @test
  40. */
  41. function shouldCreateTranslations()
  42. {
  43. $article = new Article;
  44. $article->setTitle('en');
  45. $this->em->persist($article);
  46. $this->em->flush();
  47. $this->translatableListener->setTranslatableLocale('de');
  48. $article->setTitle('de');
  49. $this->em->persist($article);
  50. $this->em->flush();
  51. }
  52. protected function getUsedEntityFixtures()
  53. {
  54. return array(
  55. self::ARTICLE,
  56. self::TRANSLATION
  57. );
  58. }
  59. }