/**
  * @param EntityMetadata $entityMetadata
  */
 protected function applyEntityMetadataConfig(EntityMetadata $entityMetadata)
 {
     $className = $entityMetadata->getClassName();
     $mergeConfig = $this->entityConfigHelper->getConfig(self::CONFIG_MERGE_SCOPE, $className, null);
     if ($mergeConfig) {
         $entityMetadata->merge($mergeConfig->all());
     }
 }
 public function testGetConfigForExtendField()
 {
     $scope = 'merge';
     $className = 'Namespace\\Entity';
     $fieldName = 'test';
     $mergeConfigProvider = $this->createConfigProvider();
     $this->configManager->expects($this->once())->method('getProvider')->with($scope)->will($this->returnValue($mergeConfigProvider));
     $mergeConfigProvider->expects($this->once())->method('hasConfig')->with($className, $fieldName)->will($this->returnValue(true));
     $mergeConfig = $this->createConfig();
     $mergeConfigProvider->expects($this->once())->method('getConfig')->with($className, $fieldName)->will($this->returnValue($mergeConfig));
     $this->assertSame($mergeConfig, $this->helper->getConfig($scope, $className, $fieldName));
 }
 /**
  * @param string $className
  * @param string $fieldName
  *
  * @return bool
  */
 protected function isExtendField($className, $fieldName)
 {
     $entityConfig = $this->entityConfigHelper->getConfig(EntityConfigHelper::EXTEND_CONFIG_SCOPE, $className, $fieldName);
     if ($entityConfig) {
         return $entityConfig->is('is_extend');
     } else {
         return false;
     }
 }
 /**
  * @param FieldMetadata $fieldMetadata
  * @return array
  */
 protected function initFieldMetadataDefaultLabel(FieldMetadata $fieldMetadata)
 {
     if ($fieldMetadata->has('label')) {
         return;
     }
     $labelCode = 'label';
     $className = $fieldMetadata->getSourceClassName();
     $fieldName = $fieldMetadata->getSourceFieldName();
     if (!$fieldMetadata->isDefinedBySourceEntity()) {
         $fieldName = null;
         if ($fieldMetadata->isCollection()) {
             $labelCode = 'plural_label';
         }
     }
     $entityConfig = $this->entityConfigHelper->getConfig(self::CONFIG_ENTITY_SCOPE, $className, $fieldName);
     if ($entityConfig) {
         $fieldMetadata->set('label', $entityConfig->get($labelCode));
     }
 }