public function testPrepareWithLanguageWithoutFallback()
 {
     $languageCode = 'Foo';
     $languageJsonFileContentsReader = $this->getMockBuilder(LanguageJsonFileContentsReader::class)->disableOriginalConstructor()->getMock();
     $languageJsonFileContentsReader->expects($this->atLeastOnce())->method('canReadByLanguageCode')->will($this->returnValue(true));
     $languageJsonFileContentsReader->expects($this->atLeastOnce())->method('readByLanguageCode')->with($this->equalTo($languageCode));
     $languageFallbackFinder = $this->getMockBuilder(LanguageFallbackFinder::class)->disableOriginalConstructor()->getMock();
     $instance = new LanguageContents($languageJsonFileContentsReader, $languageFallbackFinder);
     $this->assertFalse($instance->has($languageCode));
     $instance->prepareWithLanguage($languageCode);
     $this->assertTrue($instance->has($languageCode));
 }
 /**
  * @since 2.4
  *
  * @return string
  */
 public function fetchByLanguageCode($languageCode)
 {
     $this->languageCode = strtolower(trim($languageCode));
     if (!$this->languageContents->has($this->languageCode)) {
         $this->languageContents->prepareWithLanguage($this->languageCode);
     }
     return $this;
 }