/** * @param array $reverseRelationTypes * * @return array */ protected function getFieldTypeChoices($reverseRelationTypes) { $fieldTypes = $relationTypes = []; foreach ($this->fieldTypeProvider->getSupportedFieldTypes() as $type) { $fieldTypes[$type] = $this->translator->trans(self::TYPE_LABEL_PREFIX . $type); } foreach ($this->fieldTypeProvider->getSupportedRelationTypes() as $type) { $relationTypes[$type] = $this->translator->trans(self::TYPE_LABEL_PREFIX . $type); } uasort($fieldTypes, 'strcasecmp'); uasort($relationTypes, 'strcasecmp'); if (!empty($reverseRelationTypes)) { uasort($reverseRelationTypes, 'strcasecmp'); $relationTypes = array_merge($relationTypes, $reverseRelationTypes); } $result = [$this->translator->trans(self::GROUP_TYPE_PREFIX . self::GROUP_FIELDS) => $fieldTypes, $this->translator->trans(self::GROUP_TYPE_PREFIX . self::GROUP_RELATIONS) => $relationTypes]; return $result; }
public function testGetSupportedRelationTypes() { $relations = ['oneToMany', 'manyToOne', 'manyToMany']; $provider = new FieldTypeProvider($this->configManager, [], $relations); $this->assertEquals($relations, $provider->getSupportedRelationTypes()); }