/** * {@inheritdoc} */ public function warmUp($cacheDir) { // skip warmUp when translator doesn't use cache if (null === $this->options['cache_dir']) { return; } $locales = array_merge($this->getFallbackLocales(), [$this->getLocale()], $this->resourceProvider->getResourcesLocales()); foreach (array_unique($locales) as $locale) { // reset catalogue in case it's already loaded during the dump of the other locales. if (isset($this->catalogues[$locale])) { unset($this->catalogues[$locale]); } $this->loadCatalogue($locale); } }
function it_aggregates_the_unique_resources_locales(TranslatorResourceProviderInterface $firstResourceProvider, TranslatorResourceProviderInterface $secondResourceProvider) { $this->beConstructedWith([$firstResourceProvider, $secondResourceProvider]); $firstResourceProvider->getResourcesLocales()->willReturn(['first-locale']); $secondResourceProvider->getResourcesLocales()->willReturn(['second-locale', 'first-locale', 'second-locale']); $this->getResourcesLocales()->shouldReturn(['first-locale', 'second-locale']); }