/**
  * Set service objects to use. Unit tests may call this to substitute mock
  * services.
  */
 public function initServices(DataTypeFactory $dataTypeFactory, PropertyInfoStore $propertyInfoStore, EntityIdFormatterFactory $entityIdFormatterFactory, LanguageFallbackChainFactory $languageFallbackChainFactory, EntityTitleLookup $titleLookup, BufferingTermLookup $bufferingTermLookup)
 {
     $fallbackMode = LanguageFallbackChainFactory::FALLBACK_ALL;
     $this->labelDescriptionLookup = new LanguageFallbackLabelDescriptionLookup($bufferingTermLookup, $languageFallbackChainFactory->newFromLanguage($this->getLanguage(), $fallbackMode));
     $this->dataTypeFactory = $dataTypeFactory;
     $this->propertyInfoStore = $propertyInfoStore;
     $this->entityIdFormatter = $entityIdFormatterFactory->getEntityIdFormatter($this->labelDescriptionLookup);
     $this->titleLookup = $titleLookup;
     $this->bufferingTermLookup = $bufferingTermLookup;
 }
 /**
  * @param string $entityType
  * @param string $languageCode
  * @param LanguageFallbackChain $fallbackChain
  * @param LabelDescriptionLookup $labelDescriptionLookup
  * @param EditSectionGenerator $editSectionGenerator
  *
  * @return StatementSectionsView
  */
 private function newStatementSectionsView($entityType, $languageCode, LanguageFallbackChain $fallbackChain, LabelDescriptionLookup $labelDescriptionLookup, EditSectionGenerator $editSectionGenerator)
 {
     $snakFormatter = $this->htmlSnakFormatterFactory->getSnakFormatter($languageCode, $fallbackChain, $labelDescriptionLookup);
     $propertyIdFormatter = $this->htmlIdFormatterFactory->getEntityIdFormatter($labelDescriptionLookup);
     $snakHtmlGenerator = new SnakHtmlGenerator($this->templateFactory, $snakFormatter, $propertyIdFormatter);
     $statementGroupListView = new StatementGroupListView($this->templateFactory, $propertyIdFormatter, $editSectionGenerator, new ClaimHtmlGenerator($this->templateFactory, $snakHtmlGenerator));
     return new StatementSectionsView($this->templateFactory, $this->statementGrouper, $statementGroupListView);
 }