/**
  * {@inheritdoc}
  */
 public function createNew()
 {
     $className = $this->getClassName();
     $object = new $className();
     $object->setCurrentLocale($this->localeProvider->getCurrentLocale());
     $object->setFallbackLocale($this->localeProvider->getFallbackLocale());
     return $object;
 }
Пример #2
0
 /**
  * {@inheritdoc}
  */
 public function createNew()
 {
     $resource = $this->factory->createNew();
     if (!$resource instanceof TranslatableInterface) {
         throw new UnexpectedTypeException($resource, TranslatableInterface::class);
     }
     $resource->setCurrentLocale($this->localeProvider->getCurrentLocale());
     $resource->setFallbackLocale($this->localeProvider->getFallbackLocale());
     return $resource;
 }
 /**
  * {@inheritdoc}
  */
 public function createNew()
 {
     $resource = parent::createNew();
     if (!$resource instanceof TranslatableInterface) {
         throw new \InvalidArgumentException('Resource must implement TranslatableInterface.');
     }
     $resource->setCurrentLocale($this->localeProvider->getCurrentLocale());
     $resource->setFallbackLocale($this->localeProvider->getFallbackLocale());
     return $resource;
 }
 function it_sets_current_locale_on_created_object(LocaleProviderInterface $localeProvider)
 {
     $localeProvider->getCurrentLocale()->willReturn('en_US');
     $localeProvider->getFallbackLocale()->willReturn('en_US');
     $this->setLocaleProvider($localeProvider);
     $this->createNew()->getCurrentLocale()->shouldReturn('en_US');
     $this->createNew()->getFallbackLocale()->shouldReturn('en_US');
 }
Пример #5
0
 function it_creates_translatable_and_sets_locales(FactoryInterface $factory, LocaleProviderInterface $localeProvider, SampleTranslatableResource $resource)
 {
     $localeProvider->getCurrentLocale()->willReturn('pl_PL');
     $localeProvider->getFallbackLocale()->willReturn('en_GB');
     $factory->createNew()->willReturn($resource);
     $resource->setCurrentLocale('pl_PL')->shouldBeCalled();
     $resource->setFallbackLocale('en_GB')->shouldBeCalled();
     $this->createNew()->shouldReturn($resource);
 }