public toFieldDefinition ( |
||
$storageDef | ||
$fieldDef | eZ\Publish\SPI\Persistence\Content\Type\FieldDefinition |
public function toFieldDefinition(StorageFieldDefinition $storageDef, FieldDefinition $fieldDef)
{
$validatorConstraints = array();
if (isset($storageDef->dataInt1)) {
$validatorConstraints[self::STRING_LENGTH_VALIDATOR_IDENTIFIER]['maxStringLength'] = $storageDef->dataInt1 != 0 ? (int) $storageDef->dataInt1 : null;
}
if (isset($storageDef->dataInt2)) {
$validatorConstraints[self::STRING_LENGTH_VALIDATOR_IDENTIFIER]['minStringLength'] = $storageDef->dataInt2 != 0 ? (int) $storageDef->dataInt2 : null;
}
$fieldDef->fieldTypeConstraints->validators = $validatorConstraints;
$fieldDef->defaultValue->data = $storageDef->dataText1 ?: null;
$fieldDef->defaultValue->sortKey = $storageDef->dataText1 ?: '';
}
/** * @group fieldType * @group textLine * @covers \eZ\Publish\Core\Persistence\Legacy\Content\FieldValue\Converter\TextLineConverter::toFieldDefinition */ public function testToFieldDefinition() { $defaultText = 'This is a default value'; $fieldDef = new PersistenceFieldDefinition(); $storageDef = new StorageFieldDefinition(array('dataInt1' => 100, 'dataText1' => $defaultText)); $this->converter->toFieldDefinition($storageDef, $fieldDef); self::assertSame(array(TextLineConverter::STRING_LENGTH_VALIDATOR_IDENTIFIER => array('maxStringLength' => 100)), $fieldDef->fieldTypeConstraints->validators); self::assertSame($defaultText, $fieldDef->defaultValue->data); self::assertSame($defaultText, $fieldDef->defaultValue->sortKey); }