/** * @test */ public function listener_should_configure_entity_with_current_locale() { $em = $this->getEntityManager(); $entity = new \BehaviorFixtures\ORM\TranslatableEntity(); $entity->setTitle('test'); // magic method $entity->mergeNewTranslations(); $em->persist($entity); $em->flush(); $id = $entity->getId(); $em->clear(); $entity = $em->getRepository('BehaviorFixtures\\ORM\\TranslatableEntity')->find($id); $this->assertEquals('en', $entity->getCurrentLocale()); $this->assertEquals('test', $entity->getTitle()); $this->assertEquals('test', $entity->translate($entity->getCurrentLocale())->getTitle()); }
/** * @test */ public function should_remove_translation() { $em = $this->getEntityManager(); $entity = new \BehaviorFixtures\ORM\TranslatableEntity(); $entity->translate('en')->setTitle('Hello'); $entity->translate('nl')->setTitle('Hallo'); $entity->mergeNewTranslations(); $em->persist($entity); $em->flush(); $nlTranslation = $entity->translate('nl'); $entity->removeTranslation($nlTranslation); $em->flush(); $em->refresh($entity); $this->assertNotEquals('Hallo', $entity->translate('nl')->getTitle()); }